{
    "name": "reservation-add",
    "brief": "adds a new host reservation. The reservation may include IPv4 address,
        IPv6 addresses, IPv6 prefixes, various identifiers, a class
        the client will be assigned to, DHCPv4 and DHCPv6 options and
        more.",
    "support": [ "kea-dhcp4", "kea-dhcp6" ],
    "hook": "host_cmds",
    "avail": "1.2.0",
    "description": "See <xref linkend=\"cmd-reservation-add\"/>",

    "cmd-syntax": "{
    \"command\": \"reservation-add\",
    \"arguments\": {
        \"reservation\": {
            \"boot-file-name\": <string>,
            \"comment\": <string>
            \"client-id\": <string>,
            \"circuit-id\": <string>,
            \"duid\": <string>,
            \"flex-id\": <string>,
            \"ip-address\": <string (IPv4 address)>,
            \"ip-addresses\": [ <comma separated strings> ],
            \"hw-address\": <string>,
            \"hostname\": <string>,
            \"next-server\": <string (IPv4 address)>,
            \"option-data-list\": [ <comma separated structures defining options> ],
            \"prefixes\": [ <comma separated IPv6 prefixes> ],
            \"reservation-client-classes\": [ <comma separated strings> ],
            \"server-hostname\": <string>,
            \"subnet-id\": <integer>,
            \"user-context\": <any valid JSON>,
        }
    }
}",
    "cmd-comment": "Note the ip-address, client-id, next-server, server-hostname and
boot-file-name are IPv4 specific. duid, ip-addresses and prefixes are
IPv6 specific.",

    "resp-syntax": "
{
    \"result\": <integer>,
    \"text\": <string>
}",
    "resp-comment": "Result is an integer representation of the status. Currently supported statuses are:
<itemizedlist>
  <listitem><para>0 - success</para></listitem>
  <listitem><para>1 - error</para></listitem>
  <listitem><para>2 - unsupported</para></listitem>
  <listitem><para>3 - empty (command was completed successfully, but no data was affected or returned)
  </para></listitem>
</itemizedlist>"
}

