# RabbitMQ Header

RabbitMQ headers include key metadata fields designed to provide essential context for each message, enabling clients to perform efficient routing, filtering, and logging without the need to deserialize the full message payload.

### **Model**

| **Element**       | **Data Type** | **Description**                                                                                                                                                                                                                                    |
| ----------------- | ------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| MessageGuid       | string        | Unique identifier for the message                                                                                                                                                                                                                  |
| MessageType       | string        | Type/category of the message                                                                                                                                                                                                                       |
| FixtureId         | string        | Unique identifier for the fixture. Not avaliable for [Keep Alive (31)](https://docs.lsports.eu/u/trade/integration/message-structure/keep-alive) and [Heartbeat (31)](https://docs.lsports.eu/u/trade/integration/message-structure/heartbeat).    |
| MessageSequence   | string        | Sequence number for message ordering. Not avaliable for [Keep Alive (31)](https://docs.lsports.eu/u/trade/integration/message-structure/keep-alive) and [Heartbeat (31)](https://docs.lsports.eu/u/trade/integration/message-structure/heartbeat). |
| timestamp\_in\_ms | string        | Time when the message is distributed to your RMQ                                                                                                                                                                                                   |
| SportId           | string        | Unique identifier for the sport. Not available for [Keep Alive (31)](https://docs.lsports.eu/u/trade/integration/message-structure/keep-alive) and [Heartbeat (32)](https://docs.lsports.eu/u/trade/integration/message-structure/heartbeat).      |

**Usage Recommendation**

* **Faster Routing:** Use `MessageType`, `FixtureId`, and `SportId` in the header to direct messages to the appropriate consumer or handler before deserializing the payload.
* **Efficient Filtering:** Filter and partition messages at the broker or consumer level using header values, reducing unnecessary processing.
* **Improved Traceability:** Leverage `MessageGuid` and `MessageSequence` for logging, debugging, and tracing message flows.
