anchor.diff:  
   `routing_table`::
       Shows the `routing_table` part of the response.
  -        
  +
   `version`::
       Shows the cluster state version.
  ---
  +======
  +
   
   `retry_failed`::
  -    (Optional, boolean) If `true`, then retries allocation of shards that are 
  +    (Optional, boolean) If `true`, then retries allocation of shards that are
       blocked due to too many subsequent allocation failures.
   
   include::{docdir}/rest-api/common-parms.asciidoc[tag=timeoutparms]
   
  -
  +[role="child_attributes"]
   [[cluster-reroute-api-request-body]]
   ==== {api-request-body-title}
   
   `commands`::
  -    (Required, object) Defines the commands to perform. Supported commands are:
  +    (Required, array of objects) Defines the commands to perform. Supported commands are:
   
   +
  ---
  +.Properties of `commands`
  +[%collapsible%open]
  +======
  +
   `move`::
  -    Move a started shard from one node to another node. Accepts `index` and 
  -    `shard` for index name and shard number, `from_node` for the node to move 
  +    Move a started shard from one node to another node. Accepts `index` and
  +    `shard` for index name and shard number, `from_node` for the node to move
       the shard from, and `to_node` for the node to move the shard to.
   
   `cancel`::
  
positive.code: 
  `POST /_cluster/reroute`
  
  
  [[cluster-reroute-api-desc]]
  ==== {api-description-title}
  
  
negative.code: another explicitly, an allocation can be cancelled, and an unassigned shard can
  be explicitly allocated to a specific node.
  
  It is important to note that after processing any reroute commands {es} will
  perform rebalancing as normal (respecting the values of settings such as
  `cluster.routing.rebalance.enable`) in order to remain in a balanced state. For
  example, if the requested allocation includes moving a shard from `node1` to
  `node2` then this may cause a shard to be moved from `node2` back to `node1` to
  even things out.
  
  The cluster can be set to disable allocations using the
  `cluster.routing.allocation.enable` setting. If allocations are disabled then
  the only allocations that will be performed are explicit ones given using the
  `reroute` command, and consequent allocations due to rebalancing.
  
  