Skip to main content

How to Read This Reference

ReferenceAudience: All personasUse: jump to the right section of an operation page, and translate between page names, wire values, and contract keys

Every operation page in this reference has the same sections in the same order. Once you know the shape, you can go straight to the section that answers your question instead of reading from the top.

Command Pages​

The 20 command pages describe what you send to the reader. Their sections appear in this order. Ten appear on every command page; three appear only where the operation needs them.

#SectionOn every page?What it answers
1OverviewYesWhat the command does
2DetailsYesThe endpoint, the reported API version, and whether the command changes state
3When to UseYesWhether this command is the right one for your task
4Topic MappingYesWhere to publish the command, and where the reply arrives
5Key FieldsYesThe few fields that matter most
6Request PayloadYesEvery request field, its type, and whether it is required
7Request Semantics12 of 20How the request fields work together
8Response PayloadYesEvery response field
9Response Semantics9 of 20How to interpret the returned data
10Lifecycle3 of 20The stages between acceptance and completion
11Response CodesYesThe codes this command can return, and what to do about each
12ExamplesYesExample payloads
13Notes and CaveatsYesBehavior that the sections above do not cover

Why Three Sections Are Conditional​

PageLifecycle subsections
install_certificateAcknowledgment → Progress → Confirmation
set_osAcknowledgment → Progress → Session Impact → Confirmation
rebootAcknowledgment → Session Impact → Persistence

Event Pages​

The three event pages, mqttConnEVT, heartBeatEVT, and alerts, describe what the reader publishes without being asked. Each has nine sections:

Overview → Details → When to Use → Topic Mapping → Key Fields → Event Payload → Event Semantics → Examples → Notes and Caveats

An event has no request and no reply, so these pages have no request, response, or response-code sections. Under Event Semantics, heartBeatEVT adds Emission, Shaping, and Field Support subsections, and alerts adds Emission, Branches, and Field Support subsections.

The Tag Data Page​

The dataEVT page follows the event shape and adds sections for tag data:

Overview → Details → When to Use → Topic Mapping → Key Fields → Emission → Telemetry Payload → Field Support → Telemetry Semantics → Shaping → Delivery and Loss → Volume and Limits → Examples → Notes and Caveats

The Response Codes Page​

Response Codes is neither a command nor an event. Its sections are Overview, The Response Object, How to Read a Code, Response Code Catalog, Codes by Command, and Notes and Caveats.

Names on These Pages​

Pages use the names that appear on the wire. The AsyncAPI contract uses its own keys for the same messages. Use this table to move between them.

Name on these pagesHow the message identifies itself on the wireContract message keyContract operation key
mqttConnEVTNo kind field; recognized by connectionStateepConnectionEventsend_epConnectionEvent
heartBeatEVT"eventName": "heartbeat"heartBeatEventsend_heartBeatEvent
alertsNo kind field; recognized by type, state, id, and priorityalertEventsend_alertEvent
dataEVTNo kind field; recognized by type and datadataEventsend_dataEvent_data1, send_dataEvent_data2, send_dataEvent_shared
A command, for example get_status"command": "get_status"getStatusCommand, getStatusResponsereceive_get_status

The contract states direction from the reader's point of view: a receive_* operation is a command that the reader receives, and a send_* operation is a message that the reader publishes.

Placeholders and Examples​

  • Placeholders appear in angle brackets inside code: <tenantId>, <serial>, <broker-host>. Replace each one, including the brackets, with your own value.
  • Example payloads are mostly the contract's published examples, copied exactly. Some request payloads on command pages are built to the contract's schema to show a particular combination of fields. The contract's examples carry sample credentials such as test@123 and xxxxxx, private-network addresses, and reader serial numbers as they were shipped. Where a page changes a value, for example to mask a password or use a documentation-only address, the example's title says so. Treat none of these values as working settings.
  • Example values in prose, such as the tenant acme and the topic serial RFD40-211545201D0034, also come from the contract.

Related: 📖 MQTT API · 📕 Message Envelopes and Correlation · 📕 Response Codes

Was this helpful?