# 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](https://docs.ceruleansonar.com/c/surveyor-240-16/application-programming-interface/set_ping_parameters) is used to control the operation of Surveyor.

[ATTITUDE\_REPORT](https://docs.ceruleansonar.com/c/surveyor-240-16/application-programming-interface/attitude_report) 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](https://docs.ceruleansonar.com/c/surveyor-240-16/application-programming-interface/water_stats) is a response packet Surveyor sends to the host application containing information about the temperature and pressure of the water

[ATOF\_POINT\_DATA](https://docs.ceruleansonar.com/c/surveyor-240-16/application-programming-interface/atof_point_data) 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](https://docs.ceruleansonar.com/c/surveyor-240-16/application-programming-interface/yz_point_data) is a response packet that Surveyor sends to the host application containing the detected points in Euclidean coordinates (horizontal + vertical).

[set\_net\_info](https://docs.ceruleansonar.com/c/surveyor-240-16/application-programming-interface/set_net_info "mention") is used to set the time server Surveyor will use for synchronizing to UTC.
