A CRS definition with PROJ.4 & WKT
API · /epsg-api
Coordinate Systems API
Map projections and coordinate reference systems as an API — the EPSG dataset made queryable. Every CRS, from geographic systems like WGS 84 (the GPS standard, EPSG 4326) to projected ones like Web Mercator (3857), the UTM zones and national grids, has an EPSG code. Search the dataset by name to find the code you need, then resolve any code to its full definition: name, kind (geographic, projected, …), area of use, scope, and — most usefully — the ready-to-paste PROJ.4 string and WKT definition that GIS libraries (GDAL, PROJ, PostGIS, Leaflet, OpenLayers, QGIS, GeoPandas) consume directly. Search comes from the official EPSG Registry maintained by IOGP; the PROJ.4/WKT exports come from epsg.io. A geodesy / coordinate-reference-system resource — distinct from geocoding (addresses to coordinates), geohashing and administrative-boundary APIs. Ideal for GIS, mapping, surveying, remote-sensing and spatial-data applications.
API health
healthy- Uptime
- 100.00%
- Server probes · 24h
- Avg latency
- 464 ms
- Server probes · 24h
- Subscribers
- 3,984
- active
- Total calls
- 57
- last 7 days
Pricing
Pick a tier — billed monthly, cancel anytime.
Free
Free
- 2,380 calls / month
- 2 requests / second
- Hard cap (429 above quota, no overage)
- 2,380 calls/month
- 2 req/sec
- Search + CRS + PROJ.4/WKT
- No credit card
Starter
€6.85 /month
- 47,500 calls / month
- 8 requests / second
- Hard cap (429 above quota, no overage)
- 47.5k calls/month
- 8 req/sec
- Area of use + scope
- Email support
Pro
€21.80 /month
- 238,000 calls / month
- 20 requests / second
- Hard cap (429 above quota, no overage)
- 238k calls/month
- 20 req/sec
- GIS & mapping apps
- Priority support
Mega
€58.10 /month
- 850,000 calls / month
- 50 requests / second
- Hard cap (429 above quota, no overage)
- 850k calls/month
- 50 req/sec
- Spatial-data platform
- Dedicated SLA
Built by
Related APIs
Other APIs with overlapping tags.
UTM Coordinate API
UTM ↔ geographic coordinate conversion as an API, computed locally and deterministically on the WGS84 ellipsoid. The from-latlon endpoint projects a latitude and longitude into the Universal Transverse Mercator grid — returning the zone (1–60), the hemisphere, the latitude band letter, and the easting and northing in metres — using the Snyder/USGS Transverse Mercator series, which is accurate to a few millimetres within a zone; New York (40.7128, −74.0060) maps to zone 18N at about 583960 E, 4507351 N, and the canonical 45°N on a central meridian gives a northing of exactly 4982950.40 m. The to-latlon endpoint inverts it, recovering the latitude and longitude from a zone, hemisphere, easting and northing. Each zone is 6° of longitude wide with a 500000 m false easting on its central meridian and a 10000000 m false northing in the southern hemisphere. Latitude is valid from −80° to 84°. Everything is computed locally and deterministically, so it is instant and private. Ideal for GIS, surveying, mapping, geospatial, drone-mapping and location app developers, coordinate-conversion and grid-reference tools, and spatial software. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 2 endpoints. This is UTM on WGS84; for the polar regions use UPS and for an EPSG-code lookup use an EPSG API.
api.oanor.com/utm-api
Geodesy API
Advanced geodesy beyond the simple great circle. The vincenty endpoint computes the distance between two latitude/longitude points on the WGS84 ellipsoid using Vincenty's inverse formula — accurate to within a millimetre, far better than the spherical approximation — plus the initial and final bearings, in metres, kilometres, miles and nautical miles. The rhumb endpoint computes the rhumb-line (loxodrome) distance and the single constant compass bearing that follows it — the path you steer by holding a heading, as used in marine and air navigation. The cross-track endpoint finds how far a point lies to the left or right of a great-circle path between two points (the cross-track distance) and how far along that path it is (the along-track distance). Everything is computed locally and deterministically, so it is instant and private. Ideal for marine and aviation navigation, surveying and GIS, route analysis, and precise mapping. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 4 endpoints. This is advanced geodesy; for simple great-circle distance, bearing, midpoint and destination use a geo-distance API and for coordinate-format conversion use a geo-convert API.
api.oanor.com/geodesy-api
WKT API
Convert geometry between WKT (Well-Known Text) and GeoJSON, in both directions. WKT is the textual geometry format used by PostGIS, Spatialite, GEOS, JTS, Shapely and the OGC Simple Features standard (POINT (30 10), LINESTRING (...), POLYGON ((...))); GeoJSON is what web maps and JavaScript expect. The to-geojson endpoint turns a WKT string into a GeoJSON geometry, and to-wkt does the reverse from a GeoJSON geometry or Feature. Supports Point, LineString, Polygon, MultiPoint, MultiLineString, MultiPolygon and GeometryCollection. Perfect for bridging a spatial database and a front-end map, importing and exporting geometry, and data-migration scripts. Pure local computation — no key, no third-party service, instant; send large geometries via POST. Live, nothing stored. 3 endpoints. Distinct from coordinate-format conversion, EPSG/CRS lookups, slippy map tiles and GeoJSON geospatial metrics.
api.oanor.com/wkt-api
GeoJSON API
Measure GeoJSON geometry on the surface of the earth. Compute the true area of a Polygon or MultiPolygon (in square metres, square kilometres, hectares, acres and square miles), find the centroid of any GeoJSON, get the bounding box (west/south/east/north) and its centre, measure the length of a LineString or MultiLineString (in kilometres, metres, miles and nautical miles), and test whether a latitude/longitude point falls inside a polygon. Accepts geometries, Features and FeatureCollections; coordinates follow the GeoJSON [longitude, latitude] order. Perfect for mapping apps, geofencing, territory and catchment analysis, route distances and spatial dashboards. Pure local computation — no key, no third-party service, instant. Live, nothing stored. 6 endpoints. Distinct from abstract shape geometry, coordinate-format conversion, slippy map tiles and administrative-boundary data.
api.oanor.com/geojson-api
Frequently asked questions
Quick answers about pricing, quotas, and integration.
How do I get an API key for Coordinate Systems API?
What's the rate limit for Coordinate Systems API?
How much does Coordinate Systems API cost?
Can I cancel my subscription anytime?
Is Coordinate Systems API GDPR-compliant?
Pick an endpoint from the list on the left to see its details and try it.
Code snippets
Sign up to get an API key, then call any path under your slug.
curl https://api.oanor.com/epsg-api/SOME_PATH \
-H "x-oanor-key: oanor_test_..."
const res = await fetch("https://api.oanor.com/epsg-api/SOME_PATH", {
headers: { "x-oanor-key": "oanor_test_..." }
});
const data = await res.json();
$ch = curl_init("https://api.oanor.com/epsg-api/SOME_PATH");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
$response = curl_exec($ch);
import requests
r = requests.get(
"https://api.oanor.com/epsg-api/SOME_PATH",
headers={"x-oanor-key": "oanor_test_..."},
)
print(r.json())
Ratings
Sign in to rate.
No reviews yet.
Discussion
Ask questions, share usage tips, get answers from the provider and other developers. Public — anyone can read.
Sign in to start a thread or reply.
Sign inNew thread
·
-
Provider answer
🔒 This thread is locked — no new replies.
-
·
- No threads yet — start the discussion.
Support
Private 1:1 support with the provider — billing questions, integration issues, account problems. Only you and the provider team can see these threads.
Sign in to open a support ticket.
Sign inOpen new ticket
Describe what you need help with. The provider team gets an email and replies on the ticket page.
-
·
Urgent - No tickets yet for this API.