The AMQP 0-9-1 Error Codes reference is a searchable lookup for the reply
codes carried by the AMQP 0-9-1 protocol used by RabbitMQ and other brokers. When
a channel or connection closes unexpectedly, the broker sends a Channel.Close
or Connection.Close method containing a numeric reply code and a constant name —
and the difference between 404 not-found and 406 precondition-failed is the
difference between a missing resource and a mismatched declaration.
How it works
AMQP 0-9-1 reports failures by closing either a single channel or the whole connection, and the closing method carries a reply code plus a constant string:
Soft error → Channel.Close → connection stays open, channel dies
Hard error → Connection.Close → entire connection (all channels) dies
The reply code is a small integer (200, 311, 403, 404, 406, 501,
540, …) paired with a stable constant name such as not-found or
precondition-failed. The 3xx codes are mostly soft (channel-level), while the
5xx codes and the connection-level 3xx codes (320 connection-forced,
402 invalid-path) are hard. This tool keeps the full constant table in your
browser and filters it by number, name, level or severity.
Example and tips
Most application-level failures you debug are soft channel errors:
403 access-refused (permissions), 404 not-found (undeclared exchange/queue),
405 resource-locked (exclusive queue in use) and 406 precondition-failed
(redeclaring with different arguments). Because a soft error tears down the
channel, your client library must open a fresh channel afterwards — reusing the
closed one fails. Hard errors such as 501 frame-error, 503 command-invalid
and 541 internal-error usually indicate a protocol or broker problem rather
than something in your message, so read the accompanying text and check broker
logs. Prefer matching on the constant name over the bare number, since names are
consistent across client libraries.