@xen-orchestra/rest-api 0.19.0 → 0.21.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/dist/abstract-classes/base-controller.mjs +2 -2
  2. package/dist/abstract-classes/listener.mjs +59 -0
  3. package/dist/backup-jobs/backup-job.controller.mjs +18 -8
  4. package/dist/backup-jobs/backup-job.service.mjs +28 -2
  5. package/dist/backup-logs/backup-log.service.mjs +8 -1
  6. package/dist/events/event.class.mjs +127 -0
  7. package/dist/events/event.controller.mjs +101 -0
  8. package/dist/events/event.service.mjs +53 -0
  9. package/dist/events/event.type.mjs +1 -0
  10. package/dist/ioc/ioc.mjs +8 -0
  11. package/dist/middlewares/authentication.middleware.mjs +3 -0
  12. package/dist/open-api/common/response.common.mjs +0 -1
  13. package/dist/open-api/oa-examples/backup-archive.oa-example.mjs +2 -1
  14. package/dist/open-api/oa-examples/event.oa-example.mjs +3 -0
  15. package/dist/open-api/oa-examples/gui-routes.oa-example.mjs +4 -0
  16. package/dist/open-api/oa-examples/ping.oa-example.mjs +4 -0
  17. package/dist/open-api/oa-examples/task.oa-example.mjs +1 -1
  18. package/dist/open-api/oa-examples/vm.oa-example.mjs +74 -0
  19. package/dist/open-api/routes/routes.js +256 -22
  20. package/dist/pools/pool.controller.mjs +5 -5
  21. package/dist/schedules/schedule.controller.mjs +1 -1
  22. package/dist/servers/server.controller.mjs +2 -2
  23. package/dist/tasks/task.controller.mjs +1 -1
  24. package/dist/vms/vm.controller.mjs +44 -23
  25. package/dist/vms/vm.service.mjs +181 -0
  26. package/dist/vms/vm.type.mjs +1 -0
  27. package/dist/xoa/xoa.controller.mjs +23 -2
  28. package/dist/xoa/xoa.service.mjs +21 -1
  29. package/open-api/spec/swagger.json +1045 -197
  30. package/package.json +4 -3
@@ -437,6 +437,37 @@
437
437
  ],
438
438
  "type": "object"
439
439
  },
440
+ "PingResponse": {
441
+ "properties": {
442
+ "timestamp": {
443
+ "type": "number",
444
+ "format": "double"
445
+ },
446
+ "result": {
447
+ "type": "string",
448
+ "enum": [
449
+ "pong"
450
+ ],
451
+ "nullable": false
452
+ }
453
+ },
454
+ "required": [
455
+ "timestamp",
456
+ "result"
457
+ ],
458
+ "type": "object"
459
+ },
460
+ "XoGuiRoutes": {
461
+ "properties": {
462
+ "xo6": {
463
+ "type": "string"
464
+ },
465
+ "xo5": {
466
+ "type": "string"
467
+ }
468
+ },
469
+ "type": "object"
470
+ },
440
471
  "Record_string.string_": {
441
472
  "properties": {},
442
473
  "type": "object",
@@ -1465,6 +1496,48 @@
1465
1496
  "days"
1466
1497
  ]
1467
1498
  },
1499
+ "CreateActionReturnType_void_": {
1500
+ "anyOf": [
1501
+ {
1502
+ "properties": {
1503
+ "taskId": {
1504
+ "type": "string"
1505
+ }
1506
+ },
1507
+ "required": [
1508
+ "taskId"
1509
+ ],
1510
+ "type": "object"
1511
+ },
1512
+ {}
1513
+ ]
1514
+ },
1515
+ "CreateActionReturnType__id-XenApiVm-at-uuid__": {
1516
+ "anyOf": [
1517
+ {
1518
+ "properties": {
1519
+ "taskId": {
1520
+ "type": "string"
1521
+ }
1522
+ },
1523
+ "required": [
1524
+ "taskId"
1525
+ ],
1526
+ "type": "object"
1527
+ },
1528
+ {
1529
+ "properties": {
1530
+ "id": {
1531
+ "type": "string"
1532
+ }
1533
+ },
1534
+ "required": [
1535
+ "id"
1536
+ ],
1537
+ "type": "object"
1538
+ }
1539
+ ]
1540
+ },
1468
1541
  "Partial_Unbrand_XoAlarm__": {
1469
1542
  "properties": {
1470
1543
  "$pool": {
@@ -1742,6 +1815,12 @@
1742
1815
  "hideSuccessfulItems": {
1743
1816
  "type": "boolean"
1744
1817
  },
1818
+ "reportRecipients": {
1819
+ "items": {
1820
+ "type": "string"
1821
+ },
1822
+ "type": "array"
1823
+ },
1745
1824
  "reportWhen": {
1746
1825
  "type": "string",
1747
1826
  "enum": [
@@ -1803,6 +1882,12 @@
1803
1882
  "type": "number",
1804
1883
  "format": "double"
1805
1884
  },
1885
+ "offlineSnapshot": {
1886
+ "type": "boolean"
1887
+ },
1888
+ "checkpointSnapshot": {
1889
+ "type": "boolean"
1890
+ },
1806
1891
  "longTermRetention": {
1807
1892
  "properties": {
1808
1893
  "yearly": {
@@ -1880,7 +1965,6 @@
1880
1965
  "type": "boolean"
1881
1966
  }
1882
1967
  },
1883
- "additionalProperties": {},
1884
1968
  "type": "object"
1885
1969
  }
1886
1970
  ]
@@ -2170,6 +2254,9 @@
2170
2254
  "type": "number",
2171
2255
  "format": "double"
2172
2256
  },
2257
+ "data": {
2258
+ "$ref": "#/components/schemas/Record_string.string_"
2259
+ },
2173
2260
  "abortionRequestedAt": {
2174
2261
  "type": "number",
2175
2262
  "format": "double"
@@ -2190,6 +2277,9 @@
2190
2277
  "type": "number",
2191
2278
  "format": "double"
2192
2279
  },
2280
+ "data": {
2281
+ "$ref": "#/components/schemas/Record_string.string_"
2282
+ },
2193
2283
  "end": {
2194
2284
  "type": "number",
2195
2285
  "format": "double"
@@ -2320,6 +2410,242 @@
2320
2410
  }
2321
2411
  ]
2322
2412
  },
2413
+ "Pick_Unbrand_VmDashboard-at-quickInfo_.Exclude_keyofUnbrand_VmDashboard-at-quickInfo_.creation__": {
2414
+ "properties": {
2415
+ "$pool": {
2416
+ "type": "string"
2417
+ },
2418
+ "uuid": {
2419
+ "type": "string"
2420
+ },
2421
+ "CPUs": {
2422
+ "properties": {
2423
+ "number": {
2424
+ "type": "number",
2425
+ "format": "double"
2426
+ }
2427
+ },
2428
+ "required": [
2429
+ "number"
2430
+ ],
2431
+ "type": "object"
2432
+ },
2433
+ "memory": {
2434
+ "properties": {
2435
+ "size": {
2436
+ "type": "number",
2437
+ "format": "double"
2438
+ }
2439
+ },
2440
+ "required": [
2441
+ "size"
2442
+ ],
2443
+ "type": "object"
2444
+ },
2445
+ "mainIpAddress": {
2446
+ "type": "string"
2447
+ },
2448
+ "name_description": {
2449
+ "type": "string"
2450
+ },
2451
+ "os_version": {
2452
+ "properties": {
2453
+ "name": {
2454
+ "type": "string"
2455
+ }
2456
+ },
2457
+ "type": "object"
2458
+ },
2459
+ "power_state": {
2460
+ "$ref": "#/components/schemas/VM_POWER_STATE"
2461
+ },
2462
+ "pvDriversDetected": {
2463
+ "type": "boolean"
2464
+ },
2465
+ "pvDriversUpToDate": {
2466
+ "type": "boolean"
2467
+ },
2468
+ "pvDriversVersion": {
2469
+ "type": "string"
2470
+ },
2471
+ "startTime": {
2472
+ "type": "number",
2473
+ "format": "double",
2474
+ "nullable": true
2475
+ },
2476
+ "tags": {
2477
+ "items": {
2478
+ "type": "string"
2479
+ },
2480
+ "type": "array"
2481
+ },
2482
+ "virtualizationMode": {
2483
+ "$ref": "#/components/schemas/DOMAIN_TYPE"
2484
+ },
2485
+ "id": {
2486
+ "type": "string"
2487
+ },
2488
+ "host": {
2489
+ "type": "string"
2490
+ }
2491
+ },
2492
+ "required": [
2493
+ "$pool",
2494
+ "uuid",
2495
+ "CPUs",
2496
+ "memory",
2497
+ "name_description",
2498
+ "os_version",
2499
+ "power_state",
2500
+ "pvDriversDetected",
2501
+ "tags",
2502
+ "virtualizationMode",
2503
+ "id"
2504
+ ],
2505
+ "type": "object",
2506
+ "description": "From T, pick a set of properties whose keys are in the union K"
2507
+ },
2508
+ "Omit_Unbrand_VmDashboard-at-quickInfo_.creation_": {
2509
+ "$ref": "#/components/schemas/Pick_Unbrand_VmDashboard-at-quickInfo_.Exclude_keyofUnbrand_VmDashboard-at-quickInfo_.creation__",
2510
+ "description": "Construct a type with the properties of T except for those in type K."
2511
+ },
2512
+ "Unbrand_VmDashboard-at-quickInfo_91_creation_93__": {
2513
+ "properties": {
2514
+ "date": {
2515
+ "type": "string"
2516
+ },
2517
+ "user": {
2518
+ "type": "string"
2519
+ }
2520
+ },
2521
+ "type": "object"
2522
+ },
2523
+ "Unbrand_VmDashboardRun_": {
2524
+ "properties": {
2525
+ "backupJobId": {
2526
+ "type": "string"
2527
+ },
2528
+ "timestamp": {
2529
+ "type": "number",
2530
+ "format": "double"
2531
+ },
2532
+ "status": {
2533
+ "type": "string"
2534
+ }
2535
+ },
2536
+ "required": [
2537
+ "backupJobId",
2538
+ "timestamp",
2539
+ "status"
2540
+ ],
2541
+ "type": "object"
2542
+ },
2543
+ "Unbrand_VmDashboard-at-backupsInfo_91_replication_93__": {
2544
+ "properties": {
2545
+ "id": {
2546
+ "type": "string"
2547
+ },
2548
+ "timestamp": {
2549
+ "type": "number",
2550
+ "format": "double"
2551
+ },
2552
+ "sr": {
2553
+ "type": "string"
2554
+ }
2555
+ },
2556
+ "required": [
2557
+ "id",
2558
+ "timestamp"
2559
+ ],
2560
+ "type": "object"
2561
+ },
2562
+ "Unbrand_VmDashboardBackupArchive_": {
2563
+ "properties": {
2564
+ "id": {
2565
+ "type": "string"
2566
+ },
2567
+ "timestamp": {
2568
+ "type": "number",
2569
+ "format": "double"
2570
+ },
2571
+ "backupRepository": {
2572
+ "type": "string"
2573
+ },
2574
+ "size": {
2575
+ "type": "number",
2576
+ "format": "double"
2577
+ }
2578
+ },
2579
+ "required": [
2580
+ "id",
2581
+ "timestamp",
2582
+ "backupRepository",
2583
+ "size"
2584
+ ],
2585
+ "type": "object"
2586
+ },
2587
+ "UnbrandedVmDashboard": {
2588
+ "properties": {
2589
+ "backupsInfo": {
2590
+ "properties": {
2591
+ "backupArchives": {
2592
+ "items": {
2593
+ "$ref": "#/components/schemas/Unbrand_VmDashboardBackupArchive_"
2594
+ },
2595
+ "type": "array"
2596
+ },
2597
+ "replication": {
2598
+ "$ref": "#/components/schemas/Unbrand_VmDashboard-at-backupsInfo_91_replication_93__"
2599
+ },
2600
+ "vmProtected": {
2601
+ "type": "boolean"
2602
+ },
2603
+ "lastRuns": {
2604
+ "items": {
2605
+ "$ref": "#/components/schemas/Unbrand_VmDashboardRun_"
2606
+ },
2607
+ "type": "array"
2608
+ }
2609
+ },
2610
+ "required": [
2611
+ "backupArchives",
2612
+ "vmProtected",
2613
+ "lastRuns"
2614
+ ],
2615
+ "type": "object"
2616
+ },
2617
+ "alarms": {
2618
+ "items": {
2619
+ "type": "string"
2620
+ },
2621
+ "type": "array"
2622
+ },
2623
+ "quickInfo": {
2624
+ "allOf": [
2625
+ {
2626
+ "$ref": "#/components/schemas/Omit_Unbrand_VmDashboard-at-quickInfo_.creation_"
2627
+ },
2628
+ {
2629
+ "properties": {
2630
+ "creation": {
2631
+ "$ref": "#/components/schemas/Unbrand_VmDashboard-at-quickInfo_91_creation_93__"
2632
+ }
2633
+ },
2634
+ "required": [
2635
+ "creation"
2636
+ ],
2637
+ "type": "object"
2638
+ }
2639
+ ]
2640
+ }
2641
+ },
2642
+ "required": [
2643
+ "backupsInfo",
2644
+ "alarms",
2645
+ "quickInfo"
2646
+ ],
2647
+ "type": "object"
2648
+ },
2323
2649
  "Partial_Unbrand_XoVmTemplate__": {
2324
2650
  "properties": {
2325
2651
  "$pool": {
@@ -5890,6 +6216,9 @@
5890
6216
  "type": "number",
5891
6217
  "format": "double"
5892
6218
  },
6219
+ "data": {
6220
+ "$ref": "#/components/schemas/Record_string.string_"
6221
+ },
5893
6222
  "end": {
5894
6223
  "type": "number",
5895
6224
  "format": "double"
@@ -6706,6 +7035,22 @@
6706
7035
  "id": {
6707
7036
  "type": "string"
6708
7037
  },
7038
+ "infos": {
7039
+ "items": {
7040
+ "properties": {
7041
+ "message": {
7042
+ "type": "string"
7043
+ },
7044
+ "data": {}
7045
+ },
7046
+ "required": [
7047
+ "message",
7048
+ "data"
7049
+ ],
7050
+ "type": "object"
7051
+ },
7052
+ "type": "array"
7053
+ },
6709
7054
  "message": {
6710
7055
  "type": "string",
6711
7056
  "enum": [
@@ -6759,6 +7104,22 @@
6759
7104
  "id": {
6760
7105
  "type": "string"
6761
7106
  },
7107
+ "infos": {
7108
+ "items": {
7109
+ "properties": {
7110
+ "message": {
7111
+ "type": "string"
7112
+ },
7113
+ "data": {}
7114
+ },
7115
+ "required": [
7116
+ "message",
7117
+ "data"
7118
+ ],
7119
+ "type": "object"
7120
+ },
7121
+ "type": "array"
7122
+ },
6762
7123
  "message": {
6763
7124
  "type": "string",
6764
7125
  "enum": [
@@ -6969,7 +7330,7 @@
6969
7330
  "current_operations": {
6970
7331
  "$ref": "#/components/schemas/Record_string.POOL_ALLOWED_OPERATIONS_"
6971
7332
  },
6972
- "defaultSr": {
7333
+ "default_SR": {
6973
7334
  "type": "string"
6974
7335
  },
6975
7336
  "HA_enabled": {
@@ -7106,7 +7467,7 @@
7106
7467
  "current_operations": {
7107
7468
  "$ref": "#/components/schemas/Record_string.POOL_ALLOWED_OPERATIONS_"
7108
7469
  },
7109
- "defaultSr": {
7470
+ "default_SR": {
7110
7471
  "type": "string"
7111
7472
  },
7112
7473
  "HA_enabled": {
@@ -7191,6 +7552,32 @@
7191
7552
  ],
7192
7553
  "type": "object"
7193
7554
  },
7555
+ "CreateActionReturnType__id-Unbrand_XoNetwork__91_id_93___": {
7556
+ "anyOf": [
7557
+ {
7558
+ "properties": {
7559
+ "taskId": {
7560
+ "type": "string"
7561
+ }
7562
+ },
7563
+ "required": [
7564
+ "taskId"
7565
+ ],
7566
+ "type": "object"
7567
+ },
7568
+ {
7569
+ "properties": {
7570
+ "id": {
7571
+ "type": "string"
7572
+ }
7573
+ },
7574
+ "required": [
7575
+ "id"
7576
+ ],
7577
+ "type": "object"
7578
+ }
7579
+ ]
7580
+ },
7194
7581
  "CreateNetworkBody": {
7195
7582
  "properties": {
7196
7583
  "name": {
@@ -7222,6 +7609,32 @@
7222
7609
  "type": "object",
7223
7610
  "additionalProperties": false
7224
7611
  },
7612
+ "CreateActionReturnType__id-Unbrand_XoVm__91_id_93___": {
7613
+ "anyOf": [
7614
+ {
7615
+ "properties": {
7616
+ "taskId": {
7617
+ "type": "string"
7618
+ }
7619
+ },
7620
+ "required": [
7621
+ "taskId"
7622
+ ],
7623
+ "type": "object"
7624
+ },
7625
+ {
7626
+ "properties": {
7627
+ "id": {
7628
+ "type": "string"
7629
+ }
7630
+ },
7631
+ "required": [
7632
+ "id"
7633
+ ],
7634
+ "type": "object"
7635
+ }
7636
+ ]
7637
+ },
7225
7638
  "Unbrand_CreateVmBody_": {
7226
7639
  "properties": {
7227
7640
  "memory": {
@@ -7308,6 +7721,13 @@
7308
7721
  "copyHostBiosStrings": {
7309
7722
  "type": "boolean"
7310
7723
  },
7724
+ "hvmBootFirmware": {
7725
+ "type": "string",
7726
+ "enum": [
7727
+ "uefi",
7728
+ "bios"
7729
+ ]
7730
+ },
7311
7731
  "template": {
7312
7732
  "type": "string",
7313
7733
  "description": "template UUID"
@@ -8079,7 +8499,7 @@
8079
8499
  "bondMaster": {
8080
8500
  "type": "string"
8081
8501
  },
8082
- "bondSalves": {
8502
+ "bondSlaves": {
8083
8503
  "items": {
8084
8504
  "$ref": "#/components/schemas/Branded_PIF_"
8085
8505
  },
@@ -8228,7 +8648,7 @@
8228
8648
  "bondMaster": {
8229
8649
  "type": "string"
8230
8650
  },
8231
- "bondSalves": {
8651
+ "bondSlaves": {
8232
8652
  "items": {
8233
8653
  "$ref": "#/components/schemas/Branded_PIF_"
8234
8654
  },
@@ -9482,7 +9902,7 @@
9482
9902
  "format": "double",
9483
9903
  "nullable": true
9484
9904
  },
9485
- "bios_string": {
9905
+ "bios_strings": {
9486
9906
  "$ref": "#/components/schemas/Record_string.string_"
9487
9907
  },
9488
9908
  "build": {
@@ -9830,7 +10250,7 @@
9830
10250
  "format": "double",
9831
10251
  "nullable": true
9832
10252
  },
9833
- "bios_string": {
10253
+ "bios_strings": {
9834
10254
  "$ref": "#/components/schemas/Record_string.string_"
9835
10255
  },
9836
10256
  "build": {
@@ -10085,7 +10505,7 @@
10085
10505
  "CPUs",
10086
10506
  "address",
10087
10507
  "agentStartTime",
10088
- "bios_string",
10508
+ "bios_strings",
10089
10509
  "build",
10090
10510
  "chipset_info",
10091
10511
  "cpus",
@@ -10156,6 +10576,35 @@
10156
10576
  "type": "object",
10157
10577
  "additionalProperties": false
10158
10578
  },
10579
+ "XapiXoListenerType": {
10580
+ "type": "string",
10581
+ "enum": [
10582
+ "pool",
10583
+ "VBD",
10584
+ "host",
10585
+ "VIF",
10586
+ "VTPM",
10587
+ "VM",
10588
+ "VM-snapshot",
10589
+ "SR",
10590
+ "message",
10591
+ "vgpu",
10592
+ "gpuGroup",
10593
+ "network",
10594
+ "PBD",
10595
+ "PCI",
10596
+ "PGPU",
10597
+ "PIF",
10598
+ "VDI",
10599
+ "VDI-snapshot",
10600
+ "VDI-unmanaged",
10601
+ "vgpuType",
10602
+ "VM-controller",
10603
+ "VM-template",
10604
+ "SM",
10605
+ "alarm"
10606
+ ]
10607
+ },
10159
10608
  "Partial_Unbrand_XoBackupRepository__": {
10160
10609
  "properties": {
10161
10610
  "benchmarks": {
@@ -10307,12 +10756,54 @@
10307
10756
  "id": {
10308
10757
  "type": "string"
10309
10758
  },
10759
+ "infos": {
10760
+ "items": {
10761
+ "properties": {
10762
+ "message": {
10763
+ "type": "string"
10764
+ },
10765
+ "data": {}
10766
+ },
10767
+ "required": [
10768
+ "message",
10769
+ "data"
10770
+ ],
10771
+ "type": "object"
10772
+ },
10773
+ "type": "array"
10774
+ },
10775
+ "status": {
10776
+ "type": "string",
10777
+ "enum": [
10778
+ "failure",
10779
+ "interrupted",
10780
+ "pending",
10781
+ "success",
10782
+ "skipped"
10783
+ ]
10784
+ },
10310
10785
  "message": {
10311
10786
  "type": "string",
10312
10787
  "enum": [
10313
- "backup",
10314
- "metadata"
10788
+ "backup"
10315
10789
  ]
10790
+ },
10791
+ "start": {
10792
+ "type": "number",
10793
+ "format": "double"
10794
+ },
10795
+ "end": {
10796
+ "type": "number",
10797
+ "format": "double"
10798
+ },
10799
+ "tasks": {
10800
+ "items": {
10801
+ "$ref": "#/components/schemas/XoTask"
10802
+ },
10803
+ "type": "array"
10804
+ },
10805
+ "jobId": {
10806
+ "type": "string"
10316
10807
  }
10317
10808
  },
10318
10809
  "additionalProperties": {},
@@ -10361,18 +10852,63 @@
10361
10852
  "id": {
10362
10853
  "type": "string"
10363
10854
  },
10364
- "message": {
10855
+ "infos": {
10856
+ "items": {
10857
+ "properties": {
10858
+ "message": {
10859
+ "type": "string"
10860
+ },
10861
+ "data": {}
10862
+ },
10863
+ "required": [
10864
+ "message",
10865
+ "data"
10866
+ ],
10867
+ "type": "object"
10868
+ },
10869
+ "type": "array"
10870
+ },
10871
+ "status": {
10365
10872
  "type": "string",
10366
10873
  "enum": [
10367
- "backup",
10368
- "metadata"
10874
+ "failure",
10875
+ "interrupted",
10876
+ "pending",
10877
+ "success",
10878
+ "skipped"
10369
10879
  ]
10880
+ },
10881
+ "message": {
10882
+ "type": "string",
10883
+ "enum": [
10884
+ "backup"
10885
+ ],
10886
+ "nullable": false
10887
+ },
10888
+ "start": {
10889
+ "type": "number",
10890
+ "format": "double"
10891
+ },
10892
+ "end": {
10893
+ "type": "number",
10894
+ "format": "double"
10895
+ },
10896
+ "tasks": {
10897
+ "items": {
10898
+ "$ref": "#/components/schemas/XoTask"
10899
+ },
10900
+ "type": "array"
10901
+ },
10902
+ "jobId": {
10903
+ "type": "string"
10370
10904
  }
10371
10905
  },
10372
10906
  "additionalProperties": {},
10373
10907
  "required": [
10374
10908
  "id",
10375
- "message"
10909
+ "status",
10910
+ "message",
10911
+ "start"
10376
10912
  ],
10377
10913
  "type": "object"
10378
10914
  },
@@ -10419,6 +10955,9 @@
10419
10955
  "type": "number",
10420
10956
  "format": "double"
10421
10957
  },
10958
+ "mergeBackupsSynchronously": {
10959
+ "type": "boolean"
10960
+ },
10422
10961
  "nRetriesVmBackupFailures": {
10423
10962
  "type": "number",
10424
10963
  "format": "double"
@@ -10428,7 +10967,6 @@
10428
10967
  "format": "double"
10429
10968
  }
10430
10969
  },
10431
- "additionalProperties": {},
10432
10970
  "required": [
10433
10971
  "reportWhen"
10434
10972
  ],
@@ -10547,6 +11085,9 @@
10547
11085
  "name": {
10548
11086
  "type": "string"
10549
11087
  },
11088
+ "proxy": {
11089
+ "type": "string"
11090
+ },
10550
11091
  "mode": {
10551
11092
  "type": "string",
10552
11093
  "enum": [
@@ -10743,6 +11284,9 @@
10743
11284
  "name": {
10744
11285
  "type": "string"
10745
11286
  },
11287
+ "proxy": {
11288
+ "type": "string"
11289
+ },
10746
11290
  "mode": {
10747
11291
  "type": "string",
10748
11292
  "enum": [
@@ -10886,6 +11430,9 @@
10886
11430
  "name": {
10887
11431
  "type": "string"
10888
11432
  },
11433
+ "proxy": {
11434
+ "type": "string"
11435
+ },
10889
11436
  "mode": {
10890
11437
  "type": "string",
10891
11438
  "enum": [
@@ -11014,6 +11561,12 @@
11014
11561
  },
11015
11562
  "vm": {
11016
11563
  "properties": {
11564
+ "tags": {
11565
+ "items": {
11566
+ "type": "string"
11567
+ },
11568
+ "type": "array"
11569
+ },
11017
11570
  "name_label": {
11018
11571
  "type": "string"
11019
11572
  },
@@ -11025,6 +11578,7 @@
11025
11578
  }
11026
11579
  },
11027
11580
  "required": [
11581
+ "tags",
11028
11582
  "name_label",
11029
11583
  "name_description",
11030
11584
  "uuid"
@@ -11146,6 +11700,12 @@
11146
11700
  },
11147
11701
  "vm": {
11148
11702
  "properties": {
11703
+ "tags": {
11704
+ "items": {
11705
+ "type": "string"
11706
+ },
11707
+ "type": "array"
11708
+ },
11149
11709
  "name_label": {
11150
11710
  "type": "string"
11151
11711
  },
@@ -11157,6 +11717,7 @@
11157
11717
  }
11158
11718
  },
11159
11719
  "required": [
11720
+ "tags",
11160
11721
  "name_label",
11161
11722
  "name_description",
11162
11723
  "uuid"
@@ -11443,7 +12004,7 @@
11443
12004
  },
11444
12005
  "info": {
11445
12006
  "title": "@xen-orchestra/rest-api",
11446
- "version": "0.19.0",
12007
+ "version": "0.21.0",
11447
12008
  "description": "REST API to manage your XOA",
11448
12009
  "license": {
11449
12010
  "name": "AGPL-3.0-or-later"
@@ -11565,6 +12126,74 @@
11565
12126
  ]
11566
12127
  }
11567
12128
  },
12129
+ "/ping": {
12130
+ "get": {
12131
+ "operationId": "Ping",
12132
+ "responses": {
12133
+ "200": {
12134
+ "description": "Ok",
12135
+ "content": {
12136
+ "application/json": {
12137
+ "schema": {
12138
+ "$ref": "#/components/schemas/PingResponse"
12139
+ },
12140
+ "examples": {
12141
+ "Example 1": {
12142
+ "value": {
12143
+ "result": "pong",
12144
+ "timestamp": 1760955186850
12145
+ }
12146
+ }
12147
+ }
12148
+ }
12149
+ }
12150
+ }
12151
+ },
12152
+ "tags": [
12153
+ "xoa"
12154
+ ],
12155
+ "security": [
12156
+ {
12157
+ "none": []
12158
+ }
12159
+ ],
12160
+ "parameters": []
12161
+ }
12162
+ },
12163
+ "/gui-routes": {
12164
+ "get": {
12165
+ "operationId": "GetGuiRoutes",
12166
+ "responses": {
12167
+ "200": {
12168
+ "description": "Ok",
12169
+ "content": {
12170
+ "application/json": {
12171
+ "schema": {
12172
+ "$ref": "#/components/schemas/XoGuiRoutes"
12173
+ },
12174
+ "examples": {
12175
+ "Example 1": {
12176
+ "value": {
12177
+ "xo5": "/",
12178
+ "xo6": "/v6"
12179
+ }
12180
+ }
12181
+ }
12182
+ }
12183
+ }
12184
+ }
12185
+ },
12186
+ "tags": [
12187
+ "xoa"
12188
+ ],
12189
+ "security": [
12190
+ {
12191
+ "none": []
12192
+ }
12193
+ ],
12194
+ "parameters": []
12195
+ }
12196
+ },
11568
12197
  "/vms": {
11569
12198
  "get": {
11570
12199
  "operationId": "GetVms",
@@ -13317,18 +13946,15 @@
13317
13946
  "202": {
13318
13947
  "description": "Action executed asynchronously",
13319
13948
  "content": {
13320
- "text/plain": {
13949
+ "application/json": {
13321
13950
  "schema": {
13322
- "anyOf": [
13323
- {
13324
- "type": "string"
13325
- },
13326
- {}
13327
- ]
13951
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
13328
13952
  },
13329
13953
  "examples": {
13330
13954
  "Example 1": {
13331
- "value": "/rest/v0/tasks/0m7kl0j9l"
13955
+ "value": {
13956
+ "taskId": "0m7kl0j9l"
13957
+ }
13332
13958
  }
13333
13959
  }
13334
13960
  }
@@ -13405,18 +14031,15 @@
13405
14031
  "202": {
13406
14032
  "description": "Action executed asynchronously",
13407
14033
  "content": {
13408
- "text/plain": {
14034
+ "application/json": {
13409
14035
  "schema": {
13410
- "anyOf": [
13411
- {
13412
- "type": "string"
13413
- },
13414
- {}
13415
- ]
14036
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
13416
14037
  },
13417
14038
  "examples": {
13418
14039
  "Example 1": {
13419
- "value": "/rest/v0/tasks/0m7kl0j9l"
14040
+ "value": {
14041
+ "taskId": "0m7kl0j9l"
14042
+ }
13420
14043
  }
13421
14044
  }
13422
14045
  }
@@ -13477,16 +14100,13 @@
13477
14100
  "content": {
13478
14101
  "application/json": {
13479
14102
  "schema": {
13480
- "anyOf": [
13481
- {},
13482
- {
13483
- "type": "string"
13484
- }
13485
- ]
14103
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
13486
14104
  },
13487
14105
  "examples": {
13488
14106
  "Example 1": {
13489
- "value": "/rest/v0/tasks/0m7kl0j9l"
14107
+ "value": {
14108
+ "taskId": "0m7kl0j9l"
14109
+ }
13490
14110
  }
13491
14111
  }
13492
14112
  }
@@ -13536,18 +14156,15 @@
13536
14156
  "202": {
13537
14157
  "description": "Action executed asynchronously",
13538
14158
  "content": {
13539
- "text/plain": {
14159
+ "application/json": {
13540
14160
  "schema": {
13541
- "anyOf": [
13542
- {
13543
- "type": "string"
13544
- },
13545
- {}
13546
- ]
14161
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
13547
14162
  },
13548
14163
  "examples": {
13549
14164
  "Example 1": {
13550
- "value": "/rest/v0/tasks/0m7kl0j9l"
14165
+ "value": {
14166
+ "taskId": "0m7kl0j9l"
14167
+ }
13551
14168
  }
13552
14169
  }
13553
14170
  }
@@ -13605,18 +14222,15 @@
13605
14222
  "202": {
13606
14223
  "description": "Action executed asynchronously",
13607
14224
  "content": {
13608
- "text/plain": {
14225
+ "application/json": {
13609
14226
  "schema": {
13610
- "anyOf": [
13611
- {},
13612
- {
13613
- "type": "string"
13614
- }
13615
- ]
14227
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
13616
14228
  },
13617
14229
  "examples": {
13618
14230
  "Example 1": {
13619
- "value": "/rest/v0/tasks/0m7kl0j9l"
14231
+ "value": {
14232
+ "taskId": "0m7kl0j9l"
14233
+ }
13620
14234
  }
13621
14235
  }
13622
14236
  }
@@ -13674,18 +14288,15 @@
13674
14288
  "202": {
13675
14289
  "description": "Action executed asynchronously",
13676
14290
  "content": {
13677
- "text/plain": {
14291
+ "application/json": {
13678
14292
  "schema": {
13679
- "anyOf": [
13680
- {},
13681
- {
13682
- "type": "string"
13683
- }
13684
- ]
14293
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
13685
14294
  },
13686
14295
  "examples": {
13687
14296
  "Example 1": {
13688
- "value": "/rest/v0/tasks/0m7kl0j9l"
14297
+ "value": {
14298
+ "taskId": "0m7kl0j9l"
14299
+ }
13689
14300
  }
13690
14301
  }
13691
14302
  }
@@ -13744,18 +14355,15 @@
13744
14355
  "202": {
13745
14356
  "description": "Action executed asynchronously",
13746
14357
  "content": {
13747
- "text/plain": {
14358
+ "application/json": {
13748
14359
  "schema": {
13749
- "anyOf": [
13750
- {},
13751
- {
13752
- "type": "string"
13753
- }
13754
- ]
14360
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
13755
14361
  },
13756
14362
  "examples": {
13757
14363
  "Example 1": {
13758
- "value": "/rest/v0/tasks/0m7kl0j9l"
14364
+ "value": {
14365
+ "taskId": "0m7kl0j9l"
14366
+ }
13759
14367
  }
13760
14368
  }
13761
14369
  }
@@ -13814,18 +14422,15 @@
13814
14422
  "202": {
13815
14423
  "description": "Action executed asynchronously",
13816
14424
  "content": {
13817
- "text/plain": {
14425
+ "application/json": {
13818
14426
  "schema": {
13819
- "anyOf": [
13820
- {},
13821
- {
13822
- "type": "string"
13823
- }
13824
- ]
14427
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
13825
14428
  },
13826
14429
  "examples": {
13827
14430
  "Example 1": {
13828
- "value": "/rest/v0/tasks/0m7kl0j9l"
14431
+ "value": {
14432
+ "taskId": "0m7kl0j9l"
14433
+ }
13829
14434
  }
13830
14435
  }
13831
14436
  }
@@ -13884,18 +14489,15 @@
13884
14489
  "202": {
13885
14490
  "description": "Action executed asynchronously",
13886
14491
  "content": {
13887
- "text/plain": {
14492
+ "application/json": {
13888
14493
  "schema": {
13889
- "anyOf": [
13890
- {},
13891
- {
13892
- "type": "string"
13893
- }
13894
- ]
14494
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
13895
14495
  },
13896
14496
  "examples": {
13897
14497
  "Example 1": {
13898
- "value": "/rest/v0/tasks/0m7kl0j9l"
14498
+ "value": {
14499
+ "taskId": "0m7kl0j9l"
14500
+ }
13899
14501
  }
13900
14502
  }
13901
14503
  }
@@ -13957,28 +14559,15 @@
13957
14559
  "202": {
13958
14560
  "description": "Action executed asynchronously",
13959
14561
  "content": {
13960
- "text/plain": {
14562
+ "application/json": {
13961
14563
  "schema": {
13962
- "anyOf": [
13963
- {
13964
- "type": "string"
13965
- },
13966
- {
13967
- "properties": {
13968
- "id": {
13969
- "type": "string"
13970
- }
13971
- },
13972
- "required": [
13973
- "id"
13974
- ],
13975
- "type": "object"
13976
- }
13977
- ]
14564
+ "$ref": "#/components/schemas/CreateActionReturnType__id-XenApiVm-at-uuid__"
13978
14565
  },
13979
14566
  "examples": {
13980
14567
  "Example 1": {
13981
- "value": "/rest/v0/tasks/0m7kl0j9l"
14568
+ "value": {
14569
+ "taskId": "0m7kl0j9l"
14570
+ }
13982
14571
  }
13983
14572
  }
13984
14573
  }
@@ -14668,6 +15257,134 @@
14668
15257
  ]
14669
15258
  }
14670
15259
  },
15260
+ "/vms/{id}/dashboard": {
15261
+ "get": {
15262
+ "operationId": "GetVmDashboard",
15263
+ "responses": {
15264
+ "200": {
15265
+ "description": "Ok",
15266
+ "content": {
15267
+ "application/json": {
15268
+ "schema": {
15269
+ "$ref": "#/components/schemas/UnbrandedVmDashboard"
15270
+ },
15271
+ "examples": {
15272
+ "Example 1": {
15273
+ "value": {
15274
+ "quickInfo": {
15275
+ "id": "613f541c-4bed-fc77-7ca8-2db6b68f079c",
15276
+ "power_state": "Halted",
15277
+ "uuid": "613f541c-4bed-fc77-7ca8-2db6b68f079c",
15278
+ "name_description": "some-random-description",
15279
+ "CPUs": {
15280
+ "number": 1
15281
+ },
15282
+ "mainIpAddress": "10.1.6.166",
15283
+ "os_version": {
15284
+ "name": "Alpine Linux v3.21"
15285
+ },
15286
+ "memory": {
15287
+ "size": 536870912
15288
+ },
15289
+ "creation": {
15290
+ "date": "2025-10-23T14:12:05.689Z",
15291
+ "user": "e531b8c9-3876-4ed9-8fd2-0476d5f825c9"
15292
+ },
15293
+ "$pool": "b7569d99-30f8-178a-7d94-801de3e29b5b",
15294
+ "virtualizationMode": "hvm",
15295
+ "tags": [],
15296
+ "host": "b61a5c92-700e-4966-a13b-00633f03eea8",
15297
+ "pvDriversDetected": false,
15298
+ "startTime": null
15299
+ },
15300
+ "alarms": [],
15301
+ "backupsInfo": {
15302
+ "lastRun": [
15303
+ {
15304
+ "backupJobId": "399f368a-a550-4cdf-9c5b-84b68912b748",
15305
+ "timestamp": 1762124447136,
15306
+ "status": "success"
15307
+ },
15308
+ {
15309
+ "backupJobId": "399f368a-a550-4cdf-9c5b-84b68912b748",
15310
+ "timestamp": 1762038039074,
15311
+ "status": "success"
15312
+ },
15313
+ {
15314
+ "backupJobId": "399f368a-a550-4cdf-9c5b-84b68912b748",
15315
+ "timestamp": 1761951645862,
15316
+ "status": "success"
15317
+ }
15318
+ ],
15319
+ "vmProtected": true,
15320
+ "replication": {
15321
+ "id": "8c2b7a25-70b9-4a1c-d6e0-9cce86d3171a",
15322
+ "timestamp": 1761302770000,
15323
+ "sr": "4cb0d74e-a7c1-0b7d-46e3-09382c012abb"
15324
+ },
15325
+ "backupArchives": [
15326
+ {
15327
+ "id": "1af95910-01b4-4e87-9c2f-d895cafe0776//xo-vm-backups/613f541c-4bed-fc77-7ca8-2db6b68f079c/20251102T230026Z.json",
15328
+ "timestamp": 1762124426346,
15329
+ "backupRepository": "1af95910-01b4-4e87-9c2f-d895cafe0776",
15330
+ "size": 0
15331
+ },
15332
+ {
15333
+ "id": "1af95910-01b4-4e87-9c2f-d895cafe0776//xo-vm-backups/613f541c-4bed-fc77-7ca8-2db6b68f079c/20251101T230026Z.json",
15334
+ "timestamp": 1762038026319,
15335
+ "backupRepository": "1af95910-01b4-4e87-9c2f-d895cafe0776",
15336
+ "size": 0
15337
+ },
15338
+ {
15339
+ "id": "1af95910-01b4-4e87-9c2f-d895cafe0776//xo-vm-backups/613f541c-4bed-fc77-7ca8-2db6b68f079c/20251031T230025Z.json",
15340
+ "timestamp": 1761951625256,
15341
+ "backupRepository": "1af95910-01b4-4e87-9c2f-d895cafe0776",
15342
+ "size": 0
15343
+ }
15344
+ ]
15345
+ }
15346
+ }
15347
+ }
15348
+ }
15349
+ }
15350
+ }
15351
+ },
15352
+ "400": {
15353
+ "description": "Bad request"
15354
+ },
15355
+ "401": {
15356
+ "description": "Authentication required"
15357
+ }
15358
+ },
15359
+ "tags": [
15360
+ "vms"
15361
+ ],
15362
+ "security": [
15363
+ {
15364
+ "*": []
15365
+ }
15366
+ ],
15367
+ "parameters": [
15368
+ {
15369
+ "in": "path",
15370
+ "name": "id",
15371
+ "required": true,
15372
+ "schema": {
15373
+ "type": "string"
15374
+ },
15375
+ "example": "613f541c-4bed-fc77-7ca8-2db6b68f079c"
15376
+ },
15377
+ {
15378
+ "in": "query",
15379
+ "name": "ndjson",
15380
+ "required": false,
15381
+ "schema": {
15382
+ "type": "boolean"
15383
+ }
15384
+ }
15385
+ ]
15386
+ }
15387
+ },
14671
15388
  "/vm-templates": {
14672
15389
  "get": {
14673
15390
  "operationId": "GetVmTemplates",
@@ -20636,18 +21353,15 @@
20636
21353
  "202": {
20637
21354
  "description": "Action executed asynchronously",
20638
21355
  "content": {
20639
- "text/plain": {
21356
+ "application/json": {
20640
21357
  "schema": {
20641
- "anyOf": [
20642
- {
20643
- "type": "string"
20644
- },
20645
- {}
20646
- ]
21358
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
20647
21359
  },
20648
21360
  "examples": {
20649
21361
  "Example 1": {
20650
- "value": "/rest/v0/tasks/0m7kl0j9l"
21362
+ "value": {
21363
+ "taskId": "0m7kl0j9l"
21364
+ }
20651
21365
  }
20652
21366
  }
20653
21367
  }
@@ -21763,18 +22477,15 @@
21763
22477
  "202": {
21764
22478
  "description": "Action executed asynchronously",
21765
22479
  "content": {
21766
- "text/plain": {
22480
+ "application/json": {
21767
22481
  "schema": {
21768
- "anyOf": [
21769
- {},
21770
- {
21771
- "type": "string"
21772
- }
21773
- ]
22482
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
21774
22483
  },
21775
22484
  "examples": {
21776
22485
  "Example 1": {
21777
- "value": "/rest/v0/tasks/0m7kl0j9l"
22486
+ "value": {
22487
+ "taskId": "0m7kl0j9l"
22488
+ }
21778
22489
  }
21779
22490
  }
21780
22491
  }
@@ -21832,18 +22543,15 @@
21832
22543
  "202": {
21833
22544
  "description": "Action executed asynchronously",
21834
22545
  "content": {
21835
- "text/plain": {
22546
+ "application/json": {
21836
22547
  "schema": {
21837
- "anyOf": [
21838
- {},
21839
- {
21840
- "type": "string"
21841
- }
21842
- ]
22548
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
21843
22549
  },
21844
22550
  "examples": {
21845
22551
  "Example 1": {
21846
- "value": "/rest/v0/tasks/0m7kl0j9l"
22552
+ "value": {
22553
+ "taskId": "0m7kl0j9l"
22554
+ }
21847
22555
  }
21848
22556
  }
21849
22557
  }
@@ -22172,18 +22880,15 @@
22172
22880
  "202": {
22173
22881
  "description": "Action executed asynchronously",
22174
22882
  "content": {
22175
- "text/plain": {
22883
+ "application/json": {
22176
22884
  "schema": {
22177
- "anyOf": [
22178
- {
22179
- "type": "string"
22180
- },
22181
- {}
22182
- ]
22885
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
22183
22886
  },
22184
22887
  "examples": {
22185
22888
  "Example 1": {
22186
- "value": "/rest/v0/tasks/0m7kl0j9l"
22889
+ "value": {
22890
+ "taskId": "0m7kl0j9l"
22891
+ }
22187
22892
  }
22188
22893
  }
22189
22894
  }
@@ -22945,26 +23650,13 @@
22945
23650
  "content": {
22946
23651
  "application/json": {
22947
23652
  "schema": {
22948
- "anyOf": [
22949
- {
22950
- "type": "string"
22951
- },
22952
- {
22953
- "properties": {
22954
- "id": {
22955
- "type": "string"
22956
- }
22957
- },
22958
- "required": [
22959
- "id"
22960
- ],
22961
- "type": "object"
22962
- }
22963
- ]
23653
+ "$ref": "#/components/schemas/CreateActionReturnType__id-Unbrand_XoNetwork__91_id_93___"
22964
23654
  },
22965
23655
  "examples": {
22966
23656
  "Example 1": {
22967
- "value": "/rest/v0/tasks/0m7kl0j9l"
23657
+ "value": {
23658
+ "taskId": "0m7kl0j9l"
23659
+ }
22968
23660
  },
22969
23661
  "Example 2": {
22970
23662
  "value": {
@@ -23044,18 +23736,15 @@
23044
23736
  "202": {
23045
23737
  "description": "Action executed asynchronously",
23046
23738
  "content": {
23047
- "text/plain": {
23739
+ "application/json": {
23048
23740
  "schema": {
23049
- "anyOf": [
23050
- {},
23051
- {
23052
- "type": "string"
23053
- }
23054
- ]
23741
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
23055
23742
  },
23056
23743
  "examples": {
23057
23744
  "Example 1": {
23058
- "value": "/rest/v0/tasks/0m7kl0j9l"
23745
+ "value": {
23746
+ "taskId": "0m7kl0j9l"
23747
+ }
23059
23748
  }
23060
23749
  }
23061
23750
  }
@@ -23113,18 +23802,15 @@
23113
23802
  "202": {
23114
23803
  "description": "Action executed asynchronously",
23115
23804
  "content": {
23116
- "text/plain": {
23805
+ "application/json": {
23117
23806
  "schema": {
23118
- "anyOf": [
23119
- {},
23120
- {
23121
- "type": "string"
23122
- }
23123
- ]
23807
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
23124
23808
  },
23125
23809
  "examples": {
23126
23810
  "Example 1": {
23127
- "value": "/rest/v0/tasks/0m7kl0j9l"
23811
+ "value": {
23812
+ "taskId": "0m7kl0j9l"
23813
+ }
23128
23814
  }
23129
23815
  }
23130
23816
  }
@@ -23182,18 +23868,15 @@
23182
23868
  "202": {
23183
23869
  "description": "Action executed asynchronously",
23184
23870
  "content": {
23185
- "text/plain": {
23871
+ "application/json": {
23186
23872
  "schema": {
23187
- "anyOf": [
23188
- {},
23189
- {
23190
- "type": "string"
23191
- }
23192
- ]
23873
+ "$ref": "#/components/schemas/CreateActionReturnType_void_"
23193
23874
  },
23194
23875
  "examples": {
23195
23876
  "Example 1": {
23196
- "value": "/rest/v0/tasks/0m7kl0j9l"
23877
+ "value": {
23878
+ "taskId": "0m7kl0j9l"
23879
+ }
23197
23880
  }
23198
23881
  }
23199
23882
  }
@@ -23253,26 +23936,13 @@
23253
23936
  "content": {
23254
23937
  "application/json": {
23255
23938
  "schema": {
23256
- "anyOf": [
23257
- {
23258
- "type": "string"
23259
- },
23260
- {
23261
- "properties": {
23262
- "id": {
23263
- "type": "string"
23264
- }
23265
- },
23266
- "required": [
23267
- "id"
23268
- ],
23269
- "type": "object"
23270
- }
23271
- ]
23939
+ "$ref": "#/components/schemas/CreateActionReturnType__id-Unbrand_XoVm__91_id_93___"
23272
23940
  },
23273
23941
  "examples": {
23274
23942
  "Example 1": {
23275
- "value": "/rest/v0/tasks/0m7kl0j9l"
23943
+ "value": {
23944
+ "taskId": "0m7kl0j9l"
23945
+ }
23276
23946
  },
23277
23947
  "Example 2": {
23278
23948
  "value": {
@@ -35788,6 +36458,181 @@
35788
36458
  ]
35789
36459
  }
35790
36460
  },
36461
+ "/events": {
36462
+ "get": {
36463
+ "operationId": "OpenSseConnection",
36464
+ "responses": {
36465
+ "200": {
36466
+ "description": "OK"
36467
+ },
36468
+ "400": {
36469
+ "description": "Bad request"
36470
+ },
36471
+ "401": {
36472
+ "description": "Authentication required"
36473
+ }
36474
+ },
36475
+ "description": "Opens an SSE (Server-Sent Events) connection.\n\nBy default, there are no active subscriptions in the stream.\nTo add subscriptions, use the following endpoint:\n\n POST /rest/v0/events/:id/subscriptions\n\n\nEvents you will receive:\n- **init**: The first event you will receive.\n Data: the connection ID.\n\n- **ping**: A simple event used to keep the connection alive between the server and the client.\n Data: the event timestamp.\n\n- **add**: Triggered when an object has been added.\n Data: the added object.\n\n- **update**: Triggered when an object has been updated.\n Data: the updated object.\n\n- **remove**: Triggered when an object has been removed.\n Data: the removed object.",
36476
+ "tags": [
36477
+ "events"
36478
+ ],
36479
+ "security": [
36480
+ {
36481
+ "*": []
36482
+ }
36483
+ ],
36484
+ "parameters": []
36485
+ }
36486
+ },
36487
+ "/events/{id}/subscriptions": {
36488
+ "post": {
36489
+ "operationId": "AddSubscription",
36490
+ "responses": {
36491
+ "201": {
36492
+ "description": "Resource created",
36493
+ "content": {
36494
+ "application/json": {
36495
+ "schema": {
36496
+ "properties": {
36497
+ "id": {
36498
+ "type": "string"
36499
+ }
36500
+ },
36501
+ "required": [
36502
+ "id"
36503
+ ],
36504
+ "type": "object"
36505
+ },
36506
+ "examples": {
36507
+ "Example 1": {
36508
+ "value": {
36509
+ "id": "VM"
36510
+ }
36511
+ }
36512
+ }
36513
+ }
36514
+ }
36515
+ },
36516
+ "400": {
36517
+ "description": "Bad request"
36518
+ },
36519
+ "401": {
36520
+ "description": "Authentication required"
36521
+ },
36522
+ "404": {
36523
+ "description": "Resource not found"
36524
+ }
36525
+ },
36526
+ "description": "Add a subscription",
36527
+ "tags": [
36528
+ "events"
36529
+ ],
36530
+ "security": [
36531
+ {
36532
+ "*": []
36533
+ }
36534
+ ],
36535
+ "parameters": [
36536
+ {
36537
+ "in": "path",
36538
+ "name": "id",
36539
+ "required": true,
36540
+ "schema": {
36541
+ "type": "string"
36542
+ },
36543
+ "example": "0d8b28c6-e9bf-4c9d-a382-3c9e0d7cfbff"
36544
+ }
36545
+ ],
36546
+ "requestBody": {
36547
+ "required": true,
36548
+ "content": {
36549
+ "application/json": {
36550
+ "schema": {
36551
+ "properties": {
36552
+ "fields": {
36553
+ "anyOf": [
36554
+ {
36555
+ "items": {
36556
+ "type": "string"
36557
+ },
36558
+ "type": "array"
36559
+ },
36560
+ {
36561
+ "type": "string",
36562
+ "enum": [
36563
+ "*"
36564
+ ]
36565
+ }
36566
+ ]
36567
+ },
36568
+ "collection": {
36569
+ "$ref": "#/components/schemas/XapiXoListenerType"
36570
+ }
36571
+ },
36572
+ "required": [
36573
+ "collection"
36574
+ ],
36575
+ "type": "object"
36576
+ },
36577
+ "example": {
36578
+ "collection": "VM",
36579
+ "fields": [
36580
+ "id",
36581
+ "name_label"
36582
+ ]
36583
+ }
36584
+ }
36585
+ }
36586
+ }
36587
+ }
36588
+ },
36589
+ "/events/{id}/subscriptions/{subscriptionId}": {
36590
+ "delete": {
36591
+ "operationId": "RemoveSubscription",
36592
+ "responses": {
36593
+ "204": {
36594
+ "description": "No content"
36595
+ },
36596
+ "400": {
36597
+ "description": "Bad request"
36598
+ },
36599
+ "401": {
36600
+ "description": "Authentication required"
36601
+ },
36602
+ "404": {
36603
+ "description": "Resource not found"
36604
+ }
36605
+ },
36606
+ "description": "Remove a subscription",
36607
+ "tags": [
36608
+ "events"
36609
+ ],
36610
+ "security": [
36611
+ {
36612
+ "*": []
36613
+ }
36614
+ ],
36615
+ "parameters": [
36616
+ {
36617
+ "in": "path",
36618
+ "name": "id",
36619
+ "required": true,
36620
+ "schema": {
36621
+ "type": "string"
36622
+ },
36623
+ "example": "0d8b28c6-e9bf-4c9d-a382-3c9e0d7cfbff"
36624
+ },
36625
+ {
36626
+ "in": "path",
36627
+ "name": "subscriptionId",
36628
+ "required": true,
36629
+ "schema": {
36630
+ "$ref": "#/components/schemas/XapiXoListenerType"
36631
+ }
36632
+ }
36633
+ ]
36634
+ }
36635
+ },
35791
36636
  "/backup-repositories": {
35792
36637
  "get": {
35793
36638
  "operationId": "GetRepositories",
@@ -37226,8 +38071,11 @@
37226
38071
  "timestamp": 1758202182963,
37227
38072
  "vm": {
37228
38073
  "uuid": "7cf6150f-a978-09e6-6b41-0d1d41967bdc",
37229
- "name_description": "root:vateslab",
37230
- "name_label": "mra_vtp_test"
38074
+ "name_description": "test vm used for demo",
38075
+ "name_label": "mra_vtp_test",
38076
+ "tags": [
38077
+ "tag_1"
38078
+ ]
37231
38079
  },
37232
38080
  "differencingVhds": 1,
37233
38081
  "dynamicVhds": 0,