Check a topic with its payload
Enter the discovery prefix used by your installation, then paste the complete topic and its JSON object payload. The default prefix is homeassistant; this checker accepts a one-segment prefix.
Topics follow prefix/component/object_id/config or prefix/component/node_id/object_id/config. Topic IDs use letters, digits, underscores, or hyphens. A state topic is not a discovery topic: the configuration topic must end in config.
Use the component that the payload is meant to create. The sensor and binary sensor profiles require a state topic; the button profile requires a command topic. Common abbreviations such as uniq_id, stat_t, and dev are recognized. Other recognized components receive common-field checks, not a complete component-specific validation.
Correct the field or JSON path named in each finding, then check again. Malformed JSON, unsafe integer values, an invalid topic, or a missing required profile topic can block the check. Editing clears previous findings. The normalized JSON view is evidence of what was parsed, not a repaired payload, and copying it does not publish it.
The topic and payload stay in this tool's browser memory. They are not sent to a server or broker or saved in a URL or browser storage.
What the discovery status establishes
The status describes this checker's supported profile. It does not describe the state of your broker or a Home Assistant entity.
| Status | Meaning | Next check |
|---|---|---|
| Valid | The implemented profile found no blocking issue | Confirm the exact component's requirements and test in your installation |
| Partial | Warnings or common-field-only coverage leave questions open | Review the named paths and component-specific documentation |
| Invalid | The supplied topic or payload has a blocking problem | Correct the indicated field and run a fresh check |
When valid discovery still creates no entity
Discovery depends on more than the configuration text. This checker does not publish or subscribe, inspect retained messages or broker permissions, execute templates, or verify that Home Assistant receives the message. It cannot prove that an entity was created or that its state updates.
Use the Home Assistant MQTT discovery documentation and the page for your exact component to finish the check. Compare those requirements with your installed Home Assistant version. The local profiles do not implement every component schema or every release.