> ## Documentation Index
> Fetch the complete documentation index at: https://docs.peaq.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Messaging Index

> ROS 2 topics exposed by the peaq robotics workspace and how to use them.

The ROS 2 workspace exposes several pub/sub channels in addition to the service APIs.

## Command & Telemetry Topics

| Topic | Type | Direction | Purpose |
| - | - | - | - |
| `peaq/storage/ingest` | `peaq_ros2_interfaces/msg/StorageIngest` | Publish | Send telemetry or file CIDs to the storage bridge |
| `peaq/storage/status` | `peaq_ros2_interfaces/msg/StorageResult` | Subscribe | Track success/failure for each storage ingest |
| `peaq/tx_status` | `peaq_ros2_interfaces/msg/TxStatus` | Subscribe | `PENDING` notifications for transactions submitted by the core node |
| `peaq/events` | `peaq_ros2_interfaces/msg/Event` | Subscribe | Messages other ROS nodes publish; blockchain event streaming is not implemented |

### StorageIngest Schema

```text theme={"theme":{"light":"github-light-default","dark":"github-dark"}}
string key
bool   is_file
string file_path
string content
string content_type
string metadata_json
```

* Use `is_file=true` with `file_path` when pointing to local files that the bridge should upload to IPFS
* Provide structured payloads via `content` (JSON) plus an optional `metadata_json` envelope for robot state, firmware versions, or mission identifiers

### StorageResult Schema

```text theme={"theme":{"light":"github-light-default","dark":"github-dark"}}
string key
string cid
string ipfs_url
string tx_hash
string status
string error
```

* `status` is `PENDING`, `RETRYING`, or `FAILED`; the core node reports only `PENDING` on `peaq/tx_status`
* Failed blockchain submissions of uploaded IPFS envelopes are written to `/tmp/storage_bridge_failures.jsonl` for replay. IPFS upload and signing failures are reported on `peaq/storage/status` but are not written to that log

See [Verifiable Storage](/peaqchain/sdk-reference/robotics-sdk/ros2/messaging/verifiable-storage) to add DID-backed authentication on top of these topics.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.