{"files":{"SKILL.md":"---\nname: the-water-linked-underwater-gps-api\ndescription: \"The Water Linked Underwater GPS API skill. Use when working with The Water Linked Underwater GPS for api. Covers 38 endpoints.\"\nversion: 1.0.0\ngenerator: lapsh\n---\n\n# The Water Linked Underwater GPS API\n\n## Auth\nNo authentication required.\n\n## Base URL\nhttp://demo.waterlinked.com\n\n## Setup\n1. No auth setup needed\n2. GET /api/ -- apiversion about\n3. POST /api/v1/about/factoryreset -- create first factoryreset\n\n## Endpoints\n38 endpoints across 1 group. See references/api-spec.lap for full details.\n\n### Api\n| Method | Path | Description |\n|--------|------|-------------|\n| GET | /api/ | ApiVersion about |\n| GET | /api/v1/about | Get about |\n| POST | /api/v1/about/factoryreset | FactoryReset about |\n| GET | /api/v1/about/led | LED about |\n| GET | /api/v1/about/status | Status about |\n| GET | /api/v1/about/temperature | Temperature about |\n| GET | /api/v1/config/antenna | GetAntennaConfig config |\n| PUT | /api/v1/config/antenna | ModifyAntennaConfig config |\n| GET | /api/v1/config/generic | Get config |\n| PUT | /api/v1/config/generic | Modify config |\n| GET | /api/v1/config/ip | GetIP config |\n| PUT | /api/v1/config/ip | ModifyIP config |\n| GET | /api/v1/config/receivers/ | ListReceiver config |\n| GET | /api/v1/config/receivers/{ID} | ShowReceiver config |\n| PUT | /api/v1/config/receivers/{ID} | ModifyReceiver config |\n| GET | /api/v1/config/wifi | GetWIFI config |\n| PUT | /api/v1/config/wifi | ModifyWIFI config |\n| PUT | /api/v1/external/depth | SetDepth external |\n| GET | /api/v1/external/imu | GetVehicleIMU external |\n| PUT | /api/v1/external/imu | SetVehicleIMU external |\n| PUT | /api/v1/external/master | SetMaster external |\n| GET | /api/v1/external/orientation | GetOrientation external |\n| PUT | /api/v1/external/orientation | SetOrientation external |\n| GET | /api/v1/imu/calibrate | Get imu |\n| POST | /api/v1/imu/calibrate | Calibrate imu |\n| POST | /api/v1/imu/resetgyros | ResetGyro imu |\n| POST | /api/v1/imu/setnorth | SetNorth imu |\n| GET | /api/v1/poi/ | List poi |\n| POST | /api/v1/poi/ | Create poi |\n| GET | /api/v1/poi/{ID} | Show poi |\n| DELETE | /api/v1/poi/{ID} | Delete poi |\n| PATCH | /api/v1/poi/{ID} | Update poi |\n| GET | /api/v1/position/acoustic/filtered | AcousticFiltered position |\n| GET | /api/v1/position/acoustic/raw | AcousticRaw position |\n| GET | /api/v1/position/global | Get position |\n| GET | /api/v1/position/master | GetMaster position |\n| GET | /api/v1/status_report/ | Get status_report |\n| GET | /api/v1/warnings/ | Get warnings |\n\n## Common Questions\nMatch user requests to endpoints in references/api-spec.lap. Key patterns:\n- \"List all api?\" -> GET /api/\n- \"List all about?\" -> GET /api/v1/about\n- \"Create a factoryreset?\" -> POST /api/v1/about/factoryreset\n- \"List all led?\" -> GET /api/v1/about/led\n- \"List all status?\" -> GET /api/v1/about/status\n- \"List all temperature?\" -> GET /api/v1/about/temperature\n- \"List all antenna?\" -> GET /api/v1/config/antenna\n- \"List all generic?\" -> GET /api/v1/config/generic\n- \"List all ip?\" -> GET /api/v1/config/ip\n- \"List all receivers?\" -> GET /api/v1/config/receivers/\n- \"Get receiver details?\" -> GET /api/v1/config/receivers/{ID}\n- \"Update a receiver?\" -> PUT /api/v1/config/receivers/{ID}\n- \"List all wifi?\" -> GET /api/v1/config/wifi\n- \"List all imu?\" -> GET /api/v1/external/imu\n- \"List all orientation?\" -> GET /api/v1/external/orientation\n- \"List all calibrate?\" -> GET /api/v1/imu/calibrate\n- \"Create a calibrate?\" -> POST /api/v1/imu/calibrate\n- \"Create a resetgyro?\" -> POST /api/v1/imu/resetgyros\n- \"Create a setnorth?\" -> POST /api/v1/imu/setnorth\n- \"List all poi?\" -> GET /api/v1/poi/\n- \"Create a poi?\" -> POST /api/v1/poi/\n- \"Get poi details?\" -> GET /api/v1/poi/{ID}\n- \"Delete a poi?\" -> DELETE /api/v1/poi/{ID}\n- \"Partially update a poi?\" -> PATCH /api/v1/poi/{ID}\n- \"List all filtered?\" -> GET /api/v1/position/acoustic/filtered\n- \"List all raw?\" -> GET /api/v1/position/acoustic/raw\n- \"List all global?\" -> GET /api/v1/position/global\n- \"List all master?\" -> GET /api/v1/position/master\n- \"List all status_report?\" -> GET /api/v1/status_report/\n- \"List all warnings?\" -> GET /api/v1/warnings/\n\n## Response Tips\n- Check response schemas in references/api-spec.lap for field details\n- Create/update endpoints return the modified resource on success\n- Error responses include status codes and descriptions in the spec\n\n## References\n- Full spec: See references/api-spec.lap for complete endpoint details, parameter tables, and response schemas\n\n> Generated from the official API spec by [LAP](https://lap.sh)\n","references/api-spec.lap":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api The Water Linked Underwater GPS API\n@base http://demo.waterlinked.com\n@endpoints 38\n@hint download_for_search\n@toc api(38)\n\n@endpoint GET /api/\n@desc ApiVersion about\n@returns(200) OK\n\n@endpoint GET /api/v1/about\n@desc Get about\n@returns(200) OK\n\n@endpoint POST /api/v1/about/factoryreset\n@desc FactoryReset about\n@returns(200) OK\n@errors {404: Not Found, 500: Internal Server Error, 503: Service Unavailable}\n\n@endpoint GET /api/v1/about/led\n@desc LED about\n@returns(200) OK\n@errors {404: Not Found}\n\n@endpoint GET /api/v1/about/status\n@desc Status about\n@returns(200) OK\n\n@endpoint GET /api/v1/about/temperature\n@desc Temperature about\n@returns(200) OK\n\n@endpoint GET /api/v1/config/antenna\n@desc GetAntennaConfig config\n@returns(200) OK\n\n@endpoint PUT /api/v1/config/antenna\n@desc ModifyAntennaConfig config\n@required {payload: map # Configuration parameters for antenna set up}\n@returns(200) OK\n@errors {400: Bad Request, 500: Internal Server Error, 503: Service Unavailable}\n\n@endpoint GET /api/v1/config/generic\n@desc Get config\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint PUT /api/v1/config/generic\n@desc Modify config\n@required {payload: map # Configuration parameters}\n@returns(200) OK\n@errors {400: Bad Request, 500: Internal Server Error, 503: Service Unavailable}\n\n@endpoint GET /api/v1/config/ip\n@desc GetIP config\n@returns(200) OK\n\n@endpoint PUT /api/v1/config/ip\n@desc ModifyIP config\n@required {payload: map # Configuration parameters}\n@returns(200) OK\n@errors {400: Bad Request, 500: Internal Server Error, 503: Service Unavailable}\n\n@endpoint GET /api/v1/config/receivers/\n@desc ListReceiver config\n@returns(200) Returned list of receivers\n\n@endpoint GET /api/v1/config/receivers/{ID}\n@desc ShowReceiver config\n@required {ID: any # Identifier}\n@returns(200) OK\n@errors {404: Not Found}\n\n@endpoint PUT /api/v1/config/receivers/{ID}\n@desc ModifyReceiver config\n@required {ID: any # Identifier, payload: map # A receiver configuration}\n@returns(204) No Content\n@errors {404: Not Found}\n\n@endpoint GET /api/v1/config/wifi\n@desc GetWIFI config\n@returns(200) OK\n\n@endpoint PUT /api/v1/config/wifi\n@desc ModifyWIFI config\n@required {payload: map # Configuration parameters}\n@returns(200) OK\n@errors {400: Bad Request, 500: Internal Server Error, 503: Service Unavailable}\n\n@endpoint PUT /api/v1/external/depth\n@desc SetDepth external\n@required {payload: map # Current locator depth and temperature}\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint GET /api/v1/external/imu\n@desc GetVehicleIMU external\n@returns(200) OK\n@returns(204) No Content\n\n@endpoint PUT /api/v1/external/imu\n@desc SetVehicleIMU external\n@required {payload: map # Set current rotation and acceleration of vehicle}\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint PUT /api/v1/external/master\n@desc SetMaster external\n@required {payload: map # Global master position from external source}\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint GET /api/v1/external/orientation\n@desc GetOrientation external\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint PUT /api/v1/external/orientation\n@desc SetOrientation external\n@required {payload: map # Set current compass heading of ROV/locator}\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint GET /api/v1/imu/calibrate\n@desc Get imu\n@returns(200) OK\n\n@endpoint POST /api/v1/imu/calibrate\n@desc Calibrate imu\n@required {payload: map # IMU calibration action}\n@returns(200) OK\n@errors {408: Request Timeout, 409: Conflict}\n\n@endpoint POST /api/v1/imu/resetgyros\n@desc ResetGyro imu\n@returns(200) OK\n@errors {408: Request Timeout, 409: Conflict}\n\n@endpoint POST /api/v1/imu/setnorth\n@desc SetNorth imu\n@required {payload: map # IMU set north}\n@returns(200) OK\n@errors {400: Bad Request, 408: Request Timeout, 409: Conflict}\n\n@endpoint GET /api/v1/poi/\n@desc List poi\n@returns(200) Return list of all POIs\n@errors {404: Not Found}\n\n@endpoint POST /api/v1/poi/\n@desc Create poi\n@required {payload: map # A list of all POI}\n@returns(201) Resource created\n@errors {400: Bad Request, 403: Forbidden}\n\n@endpoint GET /api/v1/poi/{ID}\n@desc Show poi\n@required {ID: any}\n@returns(200) OK\n@errors {404: Not Found}\n\n@endpoint DELETE /api/v1/poi/{ID}\n@desc Delete poi\n@required {ID: any}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not Found}\n\n@endpoint PATCH /api/v1/poi/{ID}\n@desc Update poi\n@required {ID: any, payload: map # A list of all POI}\n@returns(204) No Content\n@errors {400: Bad Request, 404: Not Found}\n\n@endpoint GET /api/v1/position/acoustic/filtered\n@desc AcousticFiltered position\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint GET /api/v1/position/acoustic/raw\n@desc AcousticRaw position\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint GET /api/v1/position/global\n@desc Get position\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint GET /api/v1/position/master\n@desc GetMaster position\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@endpoint GET /api/v1/status_report/\n@desc Get status_report\n@returns(200) OK\n\n@endpoint GET /api/v1/warnings/\n@desc Get warnings\n@returns(200) OK\n@errors {500: Internal Server Error}\n\n@end\n"}}