GET /v0/gps
Validates GPS coordinates and normalises them to decimal degrees. Accepts latitude/longitude pairs in multiple common formats: Decimal Degrees (DD), Degrees Decimal Minutes (DDM), Degrees Minutes Seconds (DMS), and GeoURI. Validates that latitude is within −90 … +90 and longitude within −180 … +180.
Guides: Node.js · Python
Query Parameters Parameter Type Required Description value string Yes The coordinate pair to validate
Supported Formats Format Example input Returned format Decimal Degrees (signed) 52.2297, 21.0122 dd Decimal Degrees + direction 52.2297N 21.0122E dd Decimal Degrees + direction (prefix) N52.2297 E21.0122 dd Degrees Decimal Minutes 52°13.782'N, 21°0.732'E ddm Degrees Minutes Seconds 52°13'46.92"N, 21°0'43.92"E dms DMS with dash separators 52-13-46.92N, 21-0-43.92E dms GeoURI geo:52.2297,21.0122 geo-uri
Example Request Bash Node.js Python
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.isvalid.dev/v0/gps?value=52%C2%B013'46.92%22N%2C+21%C2%B00'43.92%22E" Response Fields Field Type Description valid boolean Whether the coordinate pair is valid and in range format string Detected input format: dd, ddm, dms, or geo-uri lat number Latitude in decimal degrees (−90 … +90, negative = South) lon number Longitude in decimal degrees (−180 … +180, negative = West) latDir string N or SlonDir string E or Wdms.lat string Latitude in DMS notation, e.g. 52°13'46.92"N dms.lon string Longitude in DMS notation, e.g. 21°0'43.92"E
Example Response — valid (DD, Warsaw) {
"valid": true,
"format": "dd",
"lat": 52.2297,
"lon": 21.0122,
"latDir": "N",
"lonDir": "E",
"dms": {
"lat": "52°13'46.92\"N",
"lon": "21°0'43.92\"E"
}
}Example Response — valid (DMS, Sydney) {
"valid": true,
"format": "dms",
"lat": -33.8688,
"lon": 151.2093,
"latDir": "S",
"lonDir": "E",
"dms": {
"lat": "33°52'7.68\"S",
"lon": "151°12'33.48\"E"
}
}Example Response — invalid {
"valid": false
}