xref: /qemu/qapi/qapi-schema.json (revision d4fdb05b)
1# -*- Mode: Python -*-
2# vim: filetype=python
3##
4# = Introduction
5#
6# This document describes all commands currently supported by QMP.
7#
8# Most of the time their usage is exactly the same as in the user
9# Monitor, this means that any other document which also describe
10# commands (the manpage, QEMU's manual, etc) can and should be
11# consulted.
12#
13# QMP has two types of commands: regular and query commands.  Regular
14# commands usually change the Virtual Machine's state someway, while
15# query commands just return information.  The sections below are
16# divided accordingly.
17#
18# It's important to observe that all communication examples are
19# formatted in a reader-friendly way, so that they're easier to
20# understand.  However, in real protocol usage, they're emitted as a
21# single line.
22#
23# Also, the following notation is used to denote data flow:
24#
25# Example:
26#
27# ::
28#
29#   -> data issued by the Client
30#   <- Server data response
31#
32# Please refer to the
33# :doc:`QEMU Machine Protocol Specification </interop/qmp-spec>`
34# for detailed information on the Server command and response formats.
35##
36
37{ 'include': 'pragma.json' }
38
39# Documentation generated with qapi-gen.py is in source order, with
40# included sub-schemas inserted at the first include directive
41# (subsequent include directives have no effect).  To get a sane and
42# stable order, it's best to include each sub-schema just once, or
43# include it first right here.
44
45{ 'include': 'error.json' }
46{ 'include': 'common.json' }
47{ 'include': 'sockets.json' }
48{ 'include': 'run-state.json' }
49{ 'include': 'crypto.json' }
50{ 'include': 'job.json' }
51{ 'include': 'block.json' }
52{ 'include': 'block-export.json' }
53{ 'include': 'char.json' }
54{ 'include': 'dump.json' }
55{ 'include': 'net.json' }
56{ 'include': 'ebpf.json' }
57{ 'include': 'rocker.json' }
58{ 'include': 'tpm.json' }
59{ 'include': 'ui.json' }
60{ 'include': 'authz.json' }
61{ 'include': 'migration.json' }
62{ 'include': 'transaction.json' }
63{ 'include': 'trace.json' }
64{ 'include': 'compat.json' }
65{ 'include': 'control.json' }
66{ 'include': 'introspect.json' }
67{ 'include': 'qom.json' }
68{ 'include': 'qdev.json' }
69{ 'include': 'machine-common.json' }
70{ 'include': 'machine.json' }
71{ 'include': 'machine-target.json' }
72{ 'include': 'replay.json' }
73{ 'include': 'yank.json' }
74{ 'include': 'misc.json' }
75{ 'include': 'misc-target.json' }
76{ 'include': 'audio.json' }
77{ 'include': 'acpi.json' }
78{ 'include': 'pci.json' }
79{ 'include': 'stats.json' }
80{ 'include': 'virtio.json' }
81{ 'include': 'vfio.json' }
82{ 'include': 'cryptodev.json' }
83{ 'include': 'cxl.json' }
84