The table output isn't scriptable, so a deploy automation pipeline
has no reliable way to extract a listener's id to pass to
--listener-id. --json prints the listeners as a JSON array instead
(an empty array when there are none, so callers never need to
special-case the human-readable "no listeners" message).