> For the complete documentation index, see [llms.txt](https://docs.ceruleansonar.com/c/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.ceruleansonar.com/c/surveyor-240-16/application-programming-interface.md).

# Application Programming Interface

Surveyor communication uses a packet protocol common to several Cerulean Sonar products. Please refer to the [Cerulean Ping Protocol](https://docs.ceruleansonar.com/c/v/cerulean-ping-protocol) document for the canonical packet format and other background information.&#x20;

## **Packet Payload Definitions**

This section defines the packet ID types specific to the Surveyor 240-16.&#x20;

[SET\_PING\_PARAMETERS](/c/surveyor-240-16/application-programming-interface/set_ping_parameters.md) is used to control the operation of Surveyor.

[ATTITUDE\_REPORT](/c/surveyor-240-16/application-programming-interface/attitude_report.md) is a response packet Surveyor sends to the host application containing information about the attitude (pitch and roll) of the device based on it's internal sensors.

[WATER\_STATS](/c/surveyor-240-16/application-programming-interface/water_stats.md) is a response packet Surveyor sends to the host application containing information about the temperature and pressure of the water

[ATOF\_POINT\_DATA](/c/surveyor-240-16/application-programming-interface/atof_point_data.md) is a response packet Surveyor sends to the host application containing the detected points in angle and time of flight for each detected point.

[YZ\_POINT\_DATA](/c/surveyor-240-16/application-programming-interface/yz_point_data.md) is a response packet that Surveyor sends to the host application containing the detected points in Euclidean coordinates (horizontal + vertical).

[SET\_NET\_INFO](/c/surveyor-240-16/application-programming-interface/set_net_info.md) is used to set the time server Surveyor will use for synchronizing to UTC.
