If I am sending data between two IoT devices communicating to each other using the Zigbee protocol
Two temperature sensors talking to each other
I would like to know the format of one packet and if there is any documentation you suggest I can read. that would describe in detail the packet details I would appreciate that!
The ZigBee protocol is made up of multiple layers, and the question about header needs to consider what is being sent at each layer given that there are many optional fields.
Below is an overview of the different headers - there are optional features and these may change the size significantly. For example, if long addresses are used, this will add an extra 8 bytes per address (source and destination).
The different layers in ZigBee are each documented separately.
The public ZCL (ZigBee Cluster Library) specification is here
The public ZigBee Specification containing APS and network layer information is available here.
Note that these are the public versions - the most recent versions are only available to ZigBee Alliance members. Most changes are in the ZCL specification and other documents so should not impact the answer to this question relating to headers as these should not change.