Download OpenAPI specification:Download
Documentation for Koordinates REST APIs.
Koordinates provides a RESTful API that uses standard HTTP methods and status codes. This documentation provides detailed developer documentation for specific API endpoints, including request and response formats. This should be read in conjunction with the Help documentation available at https://help.koordinates.com/
There are a number of ways to authenticate with the Koordinates API depending on your requirements. Note that not every method is available for every endpoint. Supported authentication methods are listed under in endpoint's "Authorization" section. Refer to API Tokens documentation for creating and modifying tokens.
Simple HTTP header token based authentication. Clients should authenticate by passing the token key in the "Authorization" HTTP header, prepended with the string "key ". For example:
Authorization: key abcdef0123456789abcdef0123456789
key
Cookie based session authentication as provided by browser-based login flows. Most APIs are available with session authentication. Scopes are not required. APIs intended for use only within the Koordinates.com site or customer portals are only available with session authentication. Not recommended for external usage.
sessionid
List API responses will include pagination headers.
X-Paginate-By
- the number of items per pageX-Resource-Range
- the range of items in the current response in the form start-end/total
For example:
X-Paginate-By: 20
X-Resource-Range: 20-40/320
List APIs that can be sorted or paged will usually include Link headers that conform to the RFC 5988 standard. For example:
Link:
<https://{domain}/services/api/v1.x/layers/?page=2&page_size=20>; rel="page-next",
<https://{domain}/services/api/v1.x/layers/?page=724&page_size=20>; rel="page-last",
<https://{domain}/services/api/v1.x/layers/?page_size=20&sort=name>; rel="sort-name",
<https://{domain}/services/api/v1.x/layers/?page_size=20&sort=-name>; rel="sort-name-desc",
<https://{domain}/services/api/v1.x/layers/?page_size=20&sort=popularity>; rel="sort-most-popular",
<https://{domain}/services/api/v1.x/layers/?page_size=20&sort=created_at>; rel="sort-recently-added",
<https://{domain}/services/api/v1.x/layers/?page_size=20&sort=updated_at>; rel="sort-recently-updated",
<https://{domain}/services/api/v1.x/layers/?page_size=20&sort=featured_at>; rel="sort-recently-featured",
<https://{domain}/services/api/v1.x/layers/?page_size=20&sort=-featured_at>; rel="sort-recently-featured-oldest-first"
Expansions (sometimes known as “side-loads”) provide a way to include related content into a particular API view. For many property values, we supply a URL to the resource. For example:
{
"id": 4,
"url": "https://{domain}/services/api/v1/layers/1/",
"type": "layer",
"name": "Road Centerlines",
"permissions": "https://{domain}/services/api/v1/layers/4/permissions/",
...
The permissions property points to a URL where we can see the permissions for this layer. We can include the permissions response directly in this request by including an Expand header with the value permissions.
Expand: permissions
More than one expansion can be requested by providing property names separated by commas.
A list of available expansions for any particular view is accessible
via an OPTIONS
request. This will return an object that contains the
key expansions and an array of valid expansion options. For example:
{
"name": "Layer Detail",
"expansions": [
"permissions"
]
}
Some list views can provide more detailed responses via the special list expansion. Note that list expansions cannot be used in conjunction with detailed item expansions.
The Export API provides methods for extracting data in bulk from the Koordinates platform. Multiple layers can be exported in one download, data can be cropped, reprojected into different coordinate reference systems, and data can be exported in many different formats.
crs required | string The coordinate reference system in the form EPSG:XXXX where XXXX is the identifier. For more info on EPSG, refer to http://epsg.io. Please note that KML exports can only be exported in WGS84 / EPSG:4326. |
formats required | object An object keyed by layer or table "kind" (see Layers & tables API kind property) with the mimetype of the format you want in the download. You must have one entry for each data kind you are exporting. |
required | Array of objects (ExportDatasetItemList) >= 0 A list of layer, table or dataset items to export. |
name | string The name for the archive. If not provided this will be generated from the content. |
extent | string A Crop Feature or Geometry extent for cropping to a specific geographic area. |
options | object Additional format options |
object Delivery details (omit this when creating a downloadable export) |
{- "crs": "EPSG:26767",
- "formats": {
- "raster": "application/x-hdf;subtype=kea",
- "vector": "applicaton/x-ogc-filegdb"
}, - "items": [
- {
- "color": "#003399",
- "tiles": [
- "2017_BL32_1000_1323"
], - "raster_resolution_multiplier": 1,
- "include_raster_tab": true,
- "include_geometry_field": true,
- "include_hatching": false,
- "include_xdata": false
}
], - "name": "string",
- "extent": "string",
- "options": { },
- "delivery": {
- "method": "download"
}
}
id | number |
name | string |
created_at | string |
state | string Enum: "complete" "processing" "cancelled" "error" "gone"
|
url | string <url> |
download_url | string <url> |
[- {
- "id": 1,
- "name": "string",
- "created_at": "2020-05-16T23:37:45.632286Z",
- "state": "complete",
- "url": "string",
- "download_url": "string"
}
]
object |
{- "actions": {
- "POST": {
- "id": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "name": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "created_at": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "created_via": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "state": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "url": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "download:url": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "extent": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "delivery": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "nested object",
- "children": {
- "property1": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "property2": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}
}
}, - "formats": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "nested object",
- "children": {
- "property1": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "property2": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}
}
}, - "items": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "list",
- "child": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "nested object",
- "children": {
- "property1": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "property2": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}
}
}
}, - "crs": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "options": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "nested object",
- "children": {
- "property1": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}, - "property2": {
- "required": true,
- "read_only": true,
- "label": "string",
- "type": "string"
}
}
}, - "expansions": [
- "string"
], - "filters": {
- "created_via": "web",
- "state": "complete",
- "user": 5,
- "created_at": "2000-01-01 01:01:01.000000",
- "delivery_method": "download"
}
}
}
}
The Export Validation endpoint accepts the same content as the Export Creation API but will not create/start the export and will return additional information.
The following errors are returned as part of a 400
response when the validation request itself fails. The paths below indicate where the error will be found in the nested respone, for example:
{
"error_code": 400,
"errors": {
"items": [
`no-items: You must request at least one item`
]
}
}
errors
items
no-items: You must request at least one item
\duplicate-items: Duplicate items were requested
index
]item
Invalid hyperlink - No URL match.
crs
Invalid CRS
Unknown CRS
formats
No format was selected for layers of type '{kind}'
The following error codes are returned as part of a 200
response which will include other information about the Export validation.
invalid_reasons
kml-invalid-crs
missing-crs
no-layers
over-size-limit:max-{overall-size-limit}
under-sized-courier-export:min-{overall-size-limit}
over-size-limit:{mime-type}:max-{format-size-limit}
missing-shipping_address-field:{field_name}
items
index
]invalid_reasons
commercial-data-not-supported
outside-extent
online-only
invalid-for-given-crs
crs required | string The coordinate reference system in the form EPSG:XXXX where XXXX is the identifier. For more info on EPSG, refer to http://epsg.io. Please note that KML exports can only be exported in WGS84 / EPSG:4326. |
formats required | object An object keyed by layer or table "kind" (see Layers & tables API kind property) with the mimetype of the format you want in the download. You must have one entry for each data kind you are exporting. |
required | Array of objects (ExportDatasetItemList) >= 0 A list of layer, table or dataset items to export. |
name | string The name for the archive. If not provided this will be generated from the content. |
extent | string A Crop Feature or Geometry extent for cropping to a specific geographic area. |
options | object Additional format options |
object Delivery details (omit this when creating a downloadable export) |
invalid_reasons | Array of strings Items Enum: "over-size-limit:max-{overall-size-limit}" "missing-crs" "kml-invalid-crs" "no-layers" "over-size-limit:${mime-type}:max-{format-size-limit}" |
is_valid | boolean |
Array of objects | |
name | string |
size_estimate_zipped | number Value in bytes |
Array of objects (CoordinateSystemListItem) | |
Array of objects (CoordinateSystemListItem) |
{- "crs": "EPSG:26767",
- "formats": {
- "raster": "application/x-hdf;subtype=kea",
- "vector": "applicaton/x-ogc-filegdb"
}, - "items": [
- {
- "color": "#003399",
- "tiles": [
- "2017_BL32_1000_1323"
], - "raster_resolution_multiplier": 1,
- "include_raster_tab": true,
- "include_geometry_field": true,
- "include_hatching": false,
- "include_xdata": false
}
], - "name": "string",
- "extent": "string",
- "options": { },
- "delivery": {
- "method": "download"
}
}
{- "invalid_reasons": [
- "over-size-limit:max-{overall-size-limit}"
], - "is_valid": true,
- "items": [
- {
- "color": "#003399",
- "tiles": [
- "2017_BL32_1000_1323"
], - "raster_resolution_multiplier": 1,
- "include_raster_tab": true,
- "include_geometry_field": true,
- "include_hatching": false,
- "include_xdata": false,
- "is_valid": true,
- "size_estimate_zipped": 0,
- "invalid_reasons": [
- "over-size-limit:${mime-type}:max-{format-size-limit}"
]
}
], - "name": "local-anomalies",
- "size_estimate_zipped": 386247930323,
- "suggested_crs": [
- {
- "id": "EPSG:4326",
- "name": "WGS 84",
- "kind": "geographic 2D",
- "unit_horizontal": "degree",
- "unit_vertical": null,
- "srid": 4326
}
], - "suggested_crs_vertical": [
- {
- "id": "EPSG:4326",
- "name": "WGS 84",
- "kind": "geographic 2D",
- "unit_horizontal": "degree",
- "unit_vertical": null,
- "srid": 4326
}
]
}
The Raster Query API allows users to request information related to a point location from one or more Koordinates grid or raster datasets.
Your URL endpoint is dependent on the particular Koordinates service you wish to access.
The URL for the Koordinates.com will be: https://koordinates.com/services/query/v1/raster
The raster query API returns in JSON:
content-type: application/vnd.koordinates.rasterQuery+json
Formats can be specified via URL. For example: https://koordinates.com/services/query/v1/raster.json
They can also be specified using the HTTP Accept header with the appropriate content-type against the base URL. For example: application/vnd.koordinates.rasterQuery.1+json
.
By default, all responses use the newest format. While we try very hard to prevent backwards-incompatible breaks, please note that it may happen in future.
If you're using the URL endpoint (for example, rasterQuery.json
) you can pass a &v=1 parameter to specify version 1. Note that the current version is 1.
Add a request header with Accept-Encoding: gzip
to get compressed results. This dramatically reduces the size of the response and will speed up your API requests.
key required | string Your Koordinates API key |
layer required | integer The ID of the raster or grid layer to get results from |
x required | number Longitude of the point you want to query |
y required | number Latitude of the point you want to query |
callback | boolean Only available for JSON formats. If supplied, will use the JSONP format with a callback of the given name |
{- "key": 1,
- "layer": 1132,
- "x": -41.27831,
- "y": 174.77694,
- "callback": false
}
The Vector Query API allows users to request information related to a point location from one or more Koordinates vector datasets.
Your URL endpoint is dependent on the particular Koordinates service you wish to access.
The URL for Koordinates.com site will be: https://koordinates.com/services/query/v1/vector
The vector query API returns in:
content-type: application/vnd.koordinates.setQuery+json
. Results are encoded as GeoJSON-compatible Feature objects.content-type: application/vnd.koordinates.vectorQuery+xml
. A schema is available. Geometries are encoded as GML v3 geometry objects.content-type: application/vnd.koordinates.vectorQuery-gmaps+json
. For use with the Google Maps API, geometries are returned as arrays of geometry objects, with linestrings & polygons encoded for faster display & smaller response-size.Formats can be specified via URL. For example: https://koordinates.com/services/query/v1/vector.json
They can also be specified using the HTTP Accept header with the appropriate content-type against the base URL. For example: application/vnd.koordinates.vectorQuery.1+json
By default, all responses use the newest format. While we try very hard to prevent backwards-incompatible breaks, please note that it may happen in future
If you're using the URL endpoint (eg. vector.json
) you can pass a &v=1 parameter to specify version 1.0. The current version is 1.1.
Add a request header with Accept-Encoding: gzip
to get compressed results. This dramatically reduces the size of the response and will speed up your API requests.
key required | string Your Koordinates API key |
layer required | string The ID of the vector layer to get results from |
x required | number Longitude of the point you want to query |
y required | number Latitude of the point you want to query |
max_results | integer [ 1 .. 100 ] Default: 1 Maximum number of results to return |
radius | integer [ 0 .. 100000 ] Default: 1000 Distance in meters to query around the specified point. |
geometry | boolean Default: false Whether to include the geometry for each feature result |
with_field_names | boolean Default: false Whether to include an ordered list of field names. Availability: 1.1 |
callback | boolean Only available for JSON formats. If supplied, will use the JSONP format with a callback of the given name |
{- "key": 1,
- "layer": 743,
- "x": -41.27831,
- "y": 174.77694,
- "max_results": 1,
- "radius": 1000,
- "geometry": false,
- "with_field_names": false,
- "callback": false
}
The following APIs are used to connect to external services, import and manage publication of data on the Koordinates platform.
A Source is a container of data that we can potentially process. Examples of Sources include:
A Data Source is a specific file, service or resource in a Source that could be ingested into the Koordinates platform. Some examples of data sources include:
Data sources are discovered by Koordinates by running a Scan. This is a process where we inspect the source to find the available data sources, and make them availale for importing. Some sources, like an upload, only need to be scanned once. Other sources, like an S3 bucket, can be regularly scanned to find new, updated or removed data sources.
Data sources are used to create Layers, Tables and Documents. This is typically done by creating a new object and providing refences to the data sources discovereed in a scan.
Layers and Tables can be created from one or more data sources. If more than one data source is used they must be of the same data type (e.g. vector polyon, geotiff, etc) and have the same schema (columns, field types, number of bands, etc).
Documents can only be created form a single data source and only if its a file-like datasource.
Sets are created from other Layers and Tables, rather than from data sources.
Layers, Tables, Documents and Sets are versioned.
The Data Sources API provides read and write access to sources, datasources and scans.
There are several types of sources. Each exposes the same set of core fields, but some fields are only exposed or accepted for specific types of sources. Everything in options
is optional.
All these source types can accept credentials in an options
field:
options
:username
: username to access this server.password
: password for this server.ssl_verify
: A boolean specifying whether Koordinates should verify the SSL certificate of the host when scanning this source. Defaults to true.
Username and password are write-only. They are never returned to clients via the API.url_remote
: The URL of your ArcGIS server, usually ending with/rest/api/services/. Must not contain credentials.
options
: In addition to the options listed above, ArcGIS also accepts:
folders
: A JSON array of folders to scan. If not given, the whole server will be scanned.url_remote
: A URL of the form "cifs://host/sharename", optionally with extra path segments. Must not contain credentials.url_remote
: A URL of the form "postgresql://host:port/database". Must not contain credentials.
options
:
username
: username to access the PostgreSQL database.password
: postgres database password.schemas
: A JSON array containing schema names, e.g.: "schemas": ["public", "other_schema"]
A URL source defines an FTP, HTTP or HTTPS url to an archive Koordinates can scan for data.
Currently accepts these archives:
URL sources accept the following extra fields:
url_remote
: The URL to download the archive. Must not contain credentials.url_remote
: The URL to the WFS server endpoint. Must not contain credentials.Returns a list of all the sources available to you.
id | number |
url | string <url> |
name | string |
type | string |
description | string |
description_html | string |
categories | string |
object (DataSourceUser) | |
last_scanned_at | string or null |
scan_schedule | string or null |
options | string |
metadata | string or null |
{- "id": 1,
- "name": "harbour-images.zip",
- "type": "upload",
- "description": "",
- "description_html": "",
- "categories": "string",
- "user": {
- "id": 3,
- "name": "Bob Jones"
}, - "last_scanned_at": null,
- "scan_schedule": null,
- "options": "{}",
- "metadata": null
}
To create a source, post to this view.
string
(required). The type of source to create. Example: info. Choices: info upload cifs arcgis wfs postgresstring
(required). The name of the new source.string|id
(optional)string|id
(optional). The group or user (at least one required) that owns the source, by ID or API URL.string
(optional). The remote URL to the source, not required for info or uploadsourcesstring
(optional). A Cron expression specifying how frequently the source should be scanned. All normal cron values are supported but the ‘minutes’ value is currently ignored. Predefined scheduling definitions are supported except for "@reboot".name | string |
type | string |
description | string |
categories | string |
user | number |
object (SourcePostOptions) | |
url_remote | string <url> |
scan_schedule | string |
id | number |
url | string <url> |
name | string |
type | string |
description | string |
description_html | string |
categories | string |
object (SourceUserExample) | |
last_scanned_at | string or null |
scan_schedule | string or null |
options | string |
metadata | string or null |
url_remote | string <url> |
{- "name": "Bob's ArcGIS 10 Server",
- "type": "arcgis",
- "description": "All of Bob's data",
- "categories": "string",
- "user": 3,
- "options": {
- "username": "bob",
- "password": "sekret_p@55w0rd"
}, - "scan_schedule": "@daily"
}
{- "id": 1,
- "name": "Bob's ArcGIS 10 Server",
- "type": "arcgis",
- "description": "All of Bob's data",
- "description_html": "<p>All of Bob's data</p>",
- "categories": "string",
- "user": {
- "id": 3,
- "name": "Bob Jones"
}, - "last_scanned_at": null,
- "scan_schedule": "@daily",
- "options": "{}",
- "metadata": null,
}
Returns a list of scans for a source.
Notable fields:
status
: The current status of this scan. Valid values are:
running
completed
cancelled
error
change_counts
: counts of datasources deleted, updated and added in this scan. This is only guaranteed to be present in completed scans. For other scans it may be null or the counts may all be 0.
tags:
Starts a scan for this source. No post data is required.
id | number |
url | string <url> |
name | string |
type | string |
description | string |
description_html | string |
categories | string |
object (SourceUserExample) | |
last_scanned_at | string or null |
scan_schedule | string or null |
options | string |
metadata | string or null |
url_remote | string <url> |
{- "id": 1,
- "name": "Bob's ArcGIS 10 Server",
- "type": "arcgis",
- "description": "All of Bob's data",
- "description_html": "<p>All of Bob's data</p>",
- "categories": "string",
- "user": {
- "id": 3,
- "name": "Bob Jones"
}, - "last_scanned_at": null,
- "scan_schedule": "@daily",
- "options": "{}",
- "metadata": null,
}
Information about a particular scan. This is the same as an item in the list view above, except it also includes a progress
indicator, which is a float between 0 and 1. Progress is approximate.
id | number |
url | string <url> |
status | string |
started_at | string |
completed_at | string |
object | |
log | string <url> |
progress | number <float> |
{- "id": 4,
- "status": "completed",
- "started_at": "2013-10-13T02:53:28Z",
- "completed_at": "2012-10-13T02:53:47Z",
- "change_counts": {
- "deleted": 0,
- "updated": 0,
- "added": 0
}, - "progress": 1
}
Lists datasources for this source.
The API for datasources is read-only. Datasources are updated by scanning your source. If you don't see what you expect here, check that your source has been scanned recently.
id | number |
url | string <url> |
title | string |
data_type | string |
geometry_type | string |
updated_at | string |
arcgis_folder_service_path | string |
arcgis_geometry_type | string |
arcgis_layer_name | string |
arcgis_type | string |
{- "id": 1,
- "title": "",
- "data_type": "vector",
- "geometry_type": "polygon",
- "updated_at": "2013-10-13T02:53:46Z",
- "arcgis_folder_service_path": "Bob/MapServer",
- "arcgis_geometry_type": "esriGeometryPolygon",
- "arcgis_layer_name": "Null Island",
- "arcgis_type": "Feature Layer"
}
Detailed information for a given datasource. Includes all the info shown in the list above, as well as much more information describing the datasource.
Field notes
type
is the source type, not to be confused with data_type
, format
or geometry_type
data_type
refers to the broad type of data. Different types of data require significantly different handling. Current data types are:
table
vector
raster
grid
attribute-grid
format
is a string describing the media type of this datasource.
geometry_type
describes the type of geometry in vector datasources. It is null for non-vector datasources. Possible values are:
point
linestring
polygon
multipoint
multilinestring
multipolygon
Spatial datasources may or may not have a known Coordinate Reference System (crs
).
extent
is a GeoJSON geometry. It may be null for aspatial datasources. The coordinate system for this geometry is the same as that in the crs
field, which may not be known.
For vector and table datasources, fields
is a list of JSON objects. It will be null for other datasources.
id | number |
url | string <url> |
title | string |
data_type | string |
geometry_type | string |
updated_at | string |
format | string |
crs | string |
fields | Array of any |
num_dims | number |
num_features | number |
num_bands | number or null |
extent | object |
metadata | number or null |
arcgis_folder_service_path | string |
arcgis_geometry_type | string |
arcgis_layer_name | string |
arcgis_type | string |
{- "id": 1,
- "title": "Null Island Polygons",
- "data_type": "vector",
- "geometry_type": "polygon",
- "updated_at": "2012-11-14T02:53:46Z",
- "format": "application/json",
- "crs": "EPSG:4326",
- "fields": [
- null
], - "num_dims": "2,",
- "num_features": "1500,",
- "num_bands": "null,",
- "extent": { },
- "metadata": "null,",
- "arcgis_folder_service_path": "Bob/MapServer",
- "arcgis_geometry_type": "esriGeometryPolygon",
- "arcgis_layer_name": "Geology",
- "arcgis_type": "Feature Layer"
}
Some datasources can have attached XML metadata. This is attached by the CIFS and Upload scanners, if a datasource has an .xml
file with the same basename. For example:
my-points-with-metadata.geojson
my-points-with-metadata.xml
As with sources, datasource XML must be in one of these three formats:
Response Body
<dc xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/">
<title></title>
<creator>Bob Jones and Associates</creator>
<subject>hydro</subject>
<description>Some nice colourful aerial photos of the Auckland Harbour.</description>
<date>2013-01-01</date>
<type>raster</type>
<language>eng</language>
</dc>
creator | string |
subject | string |
description | string |
date | string |
type | string |
language | string |
{- "creator": "Bob Jones and Associates",
- "subject": "hydro",
- "description": "Some nice colourful aerial photos of the Auckland Harbour.",
- "date": "2013-01-01",
- "type": "raster",
- "language": "string"
}
List layers (at layers/
) and tables (at tables/
) respectively. List views follow the Catalog API semantics.
id | integer |
url | string <uri> |
type | string |
title | string |
first_published_at | string <date-time> |
thumbnail_url | string <uri> |
published_at | string <date-time> |
featured_at | string <date-time> |
services | string <uri> |
user_permissions | Array of strings (LayersTablesPostPermissionsSerializer) |
public_access | string |
[- {
- "id": 123,
- "type": "layer",
- "title": "Fictional Boundary Points",
- "first_published_at": "2013-12-03T03:56:55Z",
- "published_at": "2013-12-03T03:56:55Z",
- "featured_at": null,
- "user_permissions": [
- "find",
- "view",
- "download"
], - "public_access": "download"
}
]
All fields except name
and data.datasources
are optional.
title required | string |
description | string |
collected | string <date> |
object (LayersLicenseSerializer) | |
supplier_reference | string |
version_reference | string |
default_style_id | integer |
publish | boolean |
mapstream_id | integer |
categories | string |
tags | Array of arrays |
Array of objects (PermissionArray) >= 0 | |
publish_to_catalog_services | boolean |
object (LayersAutoupdateSerializer) | |
required | object (LayersDataSerializer) |
tilegrids | Array of arrays |
title | string |
id | integer |
url | string <uri> |
type | string |
collected_at | string <date> |
created at | string <date> |
first_published_at | string <date> |
thumbnail_url | string <uri> |
services | string <uri> |
user_permissions | Array of strings (LayersTablesPostPermissionsSerializer) |
object (LayersTablesPostUserSerializer) | |
description | string |
description_html" | string |
object (LayersTablesPostGroupSerializer) | |
object (LayersTablesPostDataSerializer) | |
url_html | string <uri> |
published_version | string <uri> |
latest_version | string <uri> |
this_version | string <uri> |
kind | string |
categories | Array of arrays |
tags | Array of arrays |
license | string |
metadata | string |
elevation_field | string |
publish_to_catalog_services | boolean |
object (LayersAutoupdateSerializer) | |
supplier_reference | string |
styles | string <uri> |
attachments | string <uri> |
tilegrids | Array of arrays |
num_views | number |
num_downloads | number |
repository | object |
geotags | string <uri> |
public_access | string |
settings | object |
default_style | string |
{- "title": "Fictional Boundary Points",
- "description": "These points are totally fictional!",
- "collected": "2013-01-01",
- "license": {
- "id": 3,
- "title": "Creative Commons Attribution 3.0 New Zealand",
- "type": 1,
- "type_name": "Creative Commons license",
}, - "supplier_reference": "TIVPAS",
- "version_reference": "added more data",
- "default_style_id": 3,
- "publish": true,
- "mapstream_id": 3,
- "categories": "topographic/nz-topo-offshore-islands-data/terrain",
- "tags": "tag2, tag2",
- "permissions": [
- {
- "group": 999,
- "permission": "view"
}
], - "publish_to_catalog_services": true,
- "autoupdate": {
- "behavior": "yes-noschema",
- "schedule": "0 0 0,4 * *"
}, - "data": {
- "datasources": {
- "id": 345
}, - "encoding": "utf-8",
- "crs": "EPSG:4326",
- "elevation_field": "Z",
- "primary_key_field": "id",
- "geometry_field": "GEOMETRY, WKT, [X, Y], null"
}, - "tilegrids": "[]"
}
{- "title": "Fictional Boundary Points",
- "id": 123,
- "type": "layer",
- "collected_at": [
- "2013-01-01"
], - "created at": [
- "2013-01-01"
], - "first_published_at": [
- "2013-01-01"
], - "user_permissions": [
- "find",
- "view",
- "download"
], - "user": {
- "id": 3,
- "first_name": "Bob",
- "last_name": "Jones",
- "country": "NY"
}, - "description": "These points are totally fictional!",
- "description_html"": "<p>These points are totally fictional!</p>",
- "group": {
- "id": 7,
- "name": "A group"
}, - "data": {
- "storage": "Classic",
- "encoding": "none",
- "extent": {
- "type": "Polygon",
- "coordinates": [
- [
- [
- "167.59282355089192, -45.03245508994864"
]
]
]
}, - "crs": "EPSG:4326",
- "crs_display": "WGS 84",
- "primary_key_fields": "GEOMETRY",
- "datasource_count": 1,
- "geometry_field": "GEOMETRY",
- "geometry_type": "point",
- "tile_revision": 1,
- "fields": [
- {
- "name": "GEOMETRY",
- "type": "geometry"
}
], - "feature_count": 200,
- "import_started_at": "2013-12-03T15:00:27.870364Z",
- "import_ended_at": "2013-12-03T15:00:27.870364Z",
- "import_log": {
- "invalid_geometries": 0,
- "messages": 0
}, - "change_summary": {
- "deleted": 0,
- "updated": 0,
- "inserted": 2,
- "schema_changes": {
- "added": [ ],
- "change": [ ],
- "geometry_type_changed": false,
- "primary_keys_changed": false,
- "srid_changed": false
}
}, - "source_summary": {
- "paths": "fictional_points.shp",
- "filenames": "fictional_points.zip",
- "descriptions": "Example description",
- "types": "Upload",
- "formats": "Shapefile"
}, - "update_available": false,
- "raster_resolution": null,
- "empty_geometry_count": 0,
- "has_z": false,
- "export_formats": [
- {
- "name": "Shapefile",
- "mimetype": "application/x-zipped-shp"
}
]
}, - "kind": "vector",
- "categories": [ ],
- "tags": [ ],
- "license": null,
- "metadata": null,
- "elevation_field": "",
- "autoupdate": {
- "behavior": "yes-noschema",
- "schedule": "0 0 0,4 * *"
}, - "supplier_reference": " ",
- "tilegrids": [ ],
- "num_views": 1050,
- "num_downloads": 0,
- "repository": { },
- "public_access": "download",
- "settings": { },
- "default_style": null
}
A filterable list views of layers (layers/drafts/
) and and tables (tables/drafts/
) respectively, similar to /layers/
and /tables/
. This view shows the draft version of each layer or table. If the most recent version of a layer or table has been published already, it will not appear here.
All the same filters and ordering from layers/
and tables/
apply.
id | integer |
url | string <uri> |
type | string |
first_published_at | string <date-time> |
published_at | string <date-time> |
{- "id": 123,
- "type": "layer",
- "first_published_at": "2013-01-01T00:01:01",
- "published_at": "2013-12-03T03:56:55Z"
}
Displays details of a layer layers/{id}/
or a table tables/{id}/
. This view displays the published version only. To get the latest version, hit /layers/{id}/versions/latest/
Both of these URLs work for either layers or tables. This is because layers can be turned into tables and vice versa. If /tables/123/
is hit for a layer, or /layers/123/
for a table, the behaviour and response will be the same as the “correct” URL, except that the response will contain a Location header specifying the canonical URL. This applies to all sub-urls also (permissions/
, metadata/
, versions/
, etc)
title | string |
id | integer |
url | string <uri> |
type | string |
collected_at | string <date> |
created at | string <date> |
first_published_at | string <date> |
thumbnail_url | string <uri> |
services | string <uri> |
user_permissions | Array of strings (LayersTablesPostPermissionsSerializer) |
object (LayersTablesPostUserSerializer) | |
description | string |
description_html" | string |
object (LayersTablesPostGroupSerializer) | |
object (LayersTablesPostDataSerializer) | |
url_html | string <uri> |
published_version | string <uri> |
latest_version | string <uri> |
this_version | string <uri> |
kind | string |
categories | Array of arrays |
tags | Array of arrays |
license | string |
metadata | string |
elevation_field | string |
publish_to_catalog_services | boolean |
object (LayersAutoupdateSerializer) | |
supplier_reference | string |
styles | string <uri> |
attachments | string <uri> |
tilegrids | Array of arrays |
num_views | number |
num_downloads | number |
repository | object |
geotags | string <uri> |
public_access | string |
settings | object |
default_style | string |
{- "title": "Fictional Boundary Points",
- "id": 123,
- "type": "layer",
- "collected_at": [
- "2013-01-01"
], - "created at": [
- "2013-01-01"
], - "first_published_at": [
- "2013-01-01"
], - "user_permissions": [
- "find",
- "view",
- "download"
], - "user": {
- "id": 3,
- "first_name": "Bob",
- "last_name": "Jones",
- "country": "NY"
}, - "description": "These points are totally fictional!",
- "description_html"": "<p>These points are totally fictional!</p>",
- "group": {
- "id": 7,
- "name": "A group"
}, - "data": {
- "storage": "Classic",
- "encoding": "none",
- "extent": {
- "type": "Polygon",
- "coordinates": [
- [
- [
- "167.59282355089192, -45.03245508994864"
]
]
]
}, - "crs": "EPSG:4326",
- "crs_display": "WGS 84",
- "primary_key_fields": "GEOMETRY",
- "datasource_count": 1,
- "geometry_field": "GEOMETRY",
- "geometry_type": "point",
- "tile_revision": 1,
- "fields": [
- {
- "name": "GEOMETRY",
- "type": "geometry"
}
], - "feature_count": 200,
- "import_started_at": "2013-12-03T15:00:27.870364Z",
- "import_ended_at": "2013-12-03T15:00:27.870364Z",
- "import_log": {
- "invalid_geometries": 0,
- "messages": 0
}, - "change_summary": {
- "deleted": 0,
- "updated": 0,
- "inserted": 2,
- "schema_changes": {
- "added": [ ],
- "change": [ ],
- "geometry_type_changed": false,
- "primary_keys_changed": false,
- "srid_changed": false
}
}, - "source_summary": {
- "paths": "fictional_points.shp",
- "filenames": "fictional_points.zip",
- "descriptions": "Example description",
- "types": "Upload",
- "formats": "Shapefile"
}, - "update_available": false,
- "raster_resolution": null,
- "empty_geometry_count": 0,
- "has_z": false,
- "export_formats": [
- {
- "name": "Shapefile",
- "mimetype": "application/x-zipped-shp"
}
]
}, - "kind": "vector",
- "categories": [ ],
- "tags": [ ],
- "license": null,
- "metadata": null,
- "elevation_field": "",
- "autoupdate": {
- "behavior": "yes-noschema",
- "schedule": "0 0 0,4 * *"
}, - "supplier_reference": " ",
- "tilegrids": [ ],
- "num_views": 1050,
- "num_downloads": 0,
- "repository": { },
- "public_access": "download",
- "settings": { },
- "default_style": null
}
Filterable list views of versions of a specific layer or table, always sorted newest to oldest.
Parameters data__source_revision: number (optional). If the version s source supports revisions, find versions using a specific revision. Values depend on the source type. Optionally use data__source_revision__lt ordata__source_revision__gte to filter using < or >= operators respectively.
id | integer |
url | string <uri> |
created_at | string <date-time> |
reference | string |
data_import | boolean |
status | string |
progress | number |
{- "id": 123,
- "created_at": [
- "2013-03-01 00:00:01"
], - "reference": "More data",
- "data_import": false,
- "status": "importing",
- "progress": 0.5
}
Creates a new draft version, accepting the same content as POST layers/
. If anything in the data
object has changed then an import will begin immediately. Otherwise to force a re-import from the previous sources call layers/{id}/versions/{version}/import/
.
title | string |
description | string |
collected | string <date> |
object | |
supplier_reference | string |
version_reference | string |
default_style_id | integer |
publish | boolean |
object | |
categoties | string <uri> |
tags | Array of strings |
permissions | string <uri> |
publish_to_catalog_services | boolean |
object (LayersAutoupdateSerializer) | |
object (LayersDataSerializer) | |
tilegrids | string |
default_style | integer |
{- "title": "Fictional Boundary Points",
- "description": "These points are totally fictional!",
- "collected": [
- "2013-01-01"
], - "license": {
- "id": 3,
- "title": "Creative Commons Attribution 3.0 New Zealand",
- "type": 1,
- "type_name": "Creative Commons license",
}, - "supplier_reference": "TIVPAS",
- "version_reference": "added more data",
- "default_style_id": 3,
- "publish": true,
- "user": {
- "id": 3,
- "name": "Bob Jones"
}, - "categoties": [
- "topographic/nz-topo-offshore-islands-data/terrain"
], - "tags": [
- [
- "tag1",
- "tag2"
]
], - "publish_to_catalog_services": true,
- "autoupdate": {
- "behavior": "yes-noschema",
- "schedule": "0 0 0,4 * *"
}, - "data": {
- "datasources": {
- "id": 345
}, - "encoding": "utf-8",
- "crs": "EPSG:4326",
- "elevation_field": "Z",
- "primary_key_field": "id",
- "geometry_field": "GEOMETRY, WKT, [X, Y], null"
}, - "tilegrids": "EPSG:2193",
- "default_style": 10
}
{ }
url | string <url> |
identifier | string |
null
{- "identifier": "doi:10.10000/ABC1-DEF9"
}
id | number |
name | string |
object | |
url | string |
url_html | string |
url_download | string |
first_published_at | string or null |
published_at | string or null |
extension | string |
file_size | number |
file_size_formatted | number |
{- "id": 1,
- "name": "Soil Quality Report",
- "user": {
- "id": 1,
- "first_name"": "Jane",
- "last_name": "Doe",
- "country": "US"
}, - "first_published_at": null,
- "published_at": null,
- "extension": "pdf",
- "file_size": 4,
- "file_size_formatted": "4.0 B"
}
Note that documents can only be created from sources with the data type document
.
name | string |
user | string <url> |
data | object |
id | number |
url | string <url> |
created_at | string |
object |
{- "name": "Example Document",
- "data": { }
}
{- "id": 2,
- "created_at": "2015-04-12T21:43:59.200Z",
- "created_by"": {
- "id": 1,
- "first_name": "Jane",
- "last_name": "Doe",
- "country": "US"
}
}
id | number |
name | string |
object | |
url | string |
url_html | string |
url_download | string |
first_published_at | string or null |
published_at | string or null |
extension | string |
file_size | number |
file_size_formatted | number |
description | string |
description_html | string |
published_version | string |
latest_version | string |
this_version | string |
data | object |
categories | Array of strings |
tags | Array of strings |
license | string or null |
metadata | string or null |
permissions | string <url> |
publish_to_catalog_services | boolean |
{- "id": 1,
- "name": "Soil Quality Report",
- "user": {
- "id": 1,
- "first_name"": "Jane",
- "last_name": "Doe",
- "country": "US"
}, - "first_published_at": null,
- "published_at": null,
- "extension": "pdf",
- "file_size": 4,
- "file_size_formatted": "4.0 B",
- "description": "The soil quality report provides detailed information about soil conditions.",
- "description_html": "<p>The soil quality report provides detailed information about soil conditions.</p>",
- "data": { },
- "categories": [
- [ ]
], - "tags": [
- [ ]
], - "license": null,
- "metadata": null,
- "publish_to_catalog_services": false
}
id | number |
url | string <url> |
created_at | string |
object |
{- "id": 2,
- "created_at": "2015-04-12T21:43:59.200Z",
- "created_by"": {
- "id": 1,
- "first_name": "Jane",
- "last_name": "Doe",
- "country": "US"
}
}
url | string <url> |
identifier | string |
null
{- "identifier": "doi:10.10000/ABC1-DEF9"
}
The Set Query API allows users to look up a point location and get back information from a set.
A set is a collection of data layers and tables that can be viewed downloaded at one time. Publishers use sets to enable users to access datasets that are commonly grouped together.
The set query API returns similar information to the Vector and Raster API endpoints, with a few notable differences
Your URL endpoint is dependent on the particular Koordinates service you wish to access.
The URL for the Koordinates site will be https://koordinates.com/services/query/v1/set
The sets API returns in JSON:
content-type: application/vnd.koordinates.setQuery+json
Formats can be specified via URL. For example: http://api.koordinates.com/api/setQuery.json
They can also be specified using the HTTP Accept header with the appropriate content-type against the base URL. For example: application/vnd.koordinates.rasterQuery.1+json
By default, all responses use the newest format. While we try very hard to prevent backwards-incompatible breaks, please note that it may happen in future
If you're using the URL endpoint (for example, rasterQuery.json) you can pass a &v=1 parameter to specify version 1.3. Note that the current version is 1.3
Add a request header with Accept-Encoding: gzip to get compressed results. This dramatically reduces the size of the response and will speed up your API requests.
x | number |
y | number |
radius | number [ 0 .. 100000 ] Default: 100 |
geometry | boolean Default: false |
with_field_names | boolean Default: false |
set required | number |
max_result | number [ 1 .. 5 ] Default: 1 |
{- "x": 0,
- "y": 0,
- "radius": 100,
- "geometry": false,
- "with_field_names": false,
- "set required": 0,
- "max_result": 1
}
key | string |
authority | string |
short_name | string |
label | string |
auth_method | Array of arrays |
auth_scopes | Array of arrays |
domain | string |
Array of objects (ServiceTemplateSerializer) >= 0 |
[- {
- "key": "string",
- "authority": "string",
- "short_name": "string",
- "label": "string",
- "auth_method": [ ],
- "auth_scopes": [ ],
- "domain": "string",
- "template_urls": [
- {
- "name": "string",
- "service_url": "string"
}
]
}
]
DOIs – or Data Object Identifiers – are unique addresses assigned to a piece of digital content. They are intended to provide a persistent link to its location on the internet. Koordinates supports manually assigned DOIs and supports DOI "minting" and integrated management with the DataCite registry service.
For sites that have this feature enabled, the Data Object Identifiers API is an extension to Layer, Table and Document APIs. For more information about enabling Data Object Identifier support to your site, please contact support@koordinates.com.
DOIs can be defined in the following ways:
10.5072/FK2SJ1J03K
https://doi.org/10.5072/FK2SJ1J03K
doi:10.5072/FK2SJ1J03K
Any of these forms is considered an acceptable way to supply DOI strings to the API. You can also supply one or more of these in an object keyed by url or identifier as long as they are equivalent.
url | string <url> |
identifier | string |
null
{- "identifier": "doi:10.10000/ABC1-DEF9"
}
url | string <url> |
identifier | string |
null
{- "identifier": "doi:10.10000/ABC1-DEF9"
}
The Repositories API allows you to create and interact with hosted Kart repositories. Refer to https://KartProject.org for more information on Kart.
id | string |
full_name | string |
url | string <url> |
clone_location_ssh | string |
clone_location_https | string |
[- {
- "id": "string",
- "full_name": "string",
- "url": "string",
- "clone_location_ssh": "string",
- "clone_location_https": "string"
}
]
id | string |
full_name | string |
url | string <url> |
clone_location_ssh | string |
clone_location_https | string |
{- "id": "string",
- "full_name": "string",
- "url": "string",
- "clone_location_ssh": "string",
- "clone_location_https": "string"
}
depth | integer Example: depth=5 The depth, for a shallow clone, of objects to recieve, where the depths is the number of commits of history to include. by default includes all commits. |
spatial_filter | string Example: spatial_filter=POLYGON ((1752700 5921800, 1752700 5927200, 1757100 5927200, 1757100 5921800, 1752700 5921800)) Applies a spatial filter to the clone size estimate. The spatial-filter is a geometry encoded using either WKT or hex-encoded WKB. Kart-style spatial-filter specifications are also supported - where the CRS is prepended to the geometry and separated by a semicolon, eg "EPSG:2193; |
spatial_filter_crs | string Example: spatial_filter_crs=EPSG:2193 The CRS of the spatial-filter. Defaults to "EPSG:4326" if not specified here or prepended to spatial_filter. |
pack_size_bytes | number Estimate of the size (in bytes) of the pack objects to be received. This is usually roughly equivalent to the size of the repository itself, excluding the working copy. |
working_copy_size_bytes | number Estimate of the size (in bytes) of the working copy that would be created by cloning the repository, excluding the size of the repository itself. |
spatial_filter_ratio | number Optional. The approximate overlap of the specified spatial-filter with the extent of the data in the repository, as a fraction (ie 0.25 means 25% of the data's extent is covered by the spatial filter). This estimates the effectiveness of the spatial filter at saving bandwidth - a number near 0 means most data will be filtered out, and a number near 1 means most data will still be sent. This is for added context only - the pack_size_bytes and working_copy_size_bytes have already been adjusted, they do not need to be adjusted further using this number. If this field is not present, no spatial-filter was applied - either no spatial-filter was specified, or, the spatial-filter could not be applied to the estimate in a timely manner. |
{- "pack_size_bytes": 1234567890,
- "working_copy_size_bytes": 1234567890,
- "spatial_filter_ratio": 0.250071
}
name | string |
target | string |
shorthand | string |
[- {
- "name": "master",
- "target": "e67a159dce20ccfb268e975d92f88a4d64a91d27",
- "shorthand": "master"
}
]
commit | string |
abbrevCommit | string |
message | string |
authorName | string |
authorEmail | string |
authorTime | string |
authorTimeOffset | string |
committerName | string |
committerEmail | string |
committerTime | string |
committerTimeOffset | string |
parents | Array of strings |
abbrevParents | Array of strings |
refs | Array of strings |
{- "commit": "e67a159dce20ccfb268e975d92f88a4d64a91d27",
- "abbrevCommit": "e67a159",
- "message": "Updated this api documentation",
- "authorName": "Jane Doe",
- "authorEmail": "jane.doe@example.com",
- "authorTime": "2021-07-07T03:50:42Z",
- "authorTimeOffset": "+01:00",
- "committerName": "Jane Doe",
- "committerEmail": "jane.doe@example.com",
- "committerTime": "2021-07-07T03:50:42Z",
- "committerTimeOffset": "+01:00",
- "parents": [
- "string"
], - "abbrevParents": [
- "string"
], - "refs": [
- "string"
]
}
ref | string Example: ref=main Branch or tag reference to filter imports by. |
url | string |
message | string |
Array of objects (RepoDatasetImportSerializer) | |
ref | string |
state | string Enum: "WORKING" "COMPLETED" "ERROR" "CANCELLED" |
progress | number <float> [ 0 .. 1 ] |
created_at | string <date-time> |
updated_at | string <date-time> |
commit_oid | string (CommitOid) |
author_email | string <email> |
[- {
- "url": "string",
- "message": "string",
- "datasets": [
- {
- "path": "path/to/dataset",
- "datasources": [
- "string"
], - "data_type": "VECTOR",
- "categories": [
- "string"
], - "tags": [
- "string"
], - "license": "string",
- "metadata": "string",
- "attachments": [
- "string"
], - "strategy": "update-existing"
}
], - "ref": "string",
- "state": "WORKING",
- "progress": 1,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "commit_oid": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "author_email": "user@example.com"
}
]
message | string A commit message to associate with the import |
ref | string The branch or tag to import to |
Array of objects (RepoDatasetImportSerializer) |
{- "message": "string",
- "ref": "string",
- "datasets": [
- {
- "path": "path/to/dataset",
- "datasources": [
- "string"
], - "data_type": "VECTOR",
- "categories": [
- "string"
], - "tags": [
- "string"
], - "license": "string",
- "metadata": "string",
- "attachments": [
- "string"
], - "strategy": "update-existing"
}
]
}
url | string |
message | string |
Array of objects (RepoDatasetImportSerializer) | |
ref | string |
state | string Enum: "WORKING" "COMPLETED" "ERROR" "CANCELLED" |
progress | number <float> [ 0 .. 1 ] |
created_at | string <date-time> |
updated_at | string <date-time> |
commit_oid | string (CommitOid) |
author_email | string <email> |
{- "url": "string",
- "message": "string",
- "datasets": [
- {
- "path": "path/to/dataset",
- "datasources": [
- "string"
], - "data_type": "VECTOR",
- "categories": [
- "string"
], - "tags": [
- "string"
], - "license": "string",
- "metadata": "string",
- "attachments": [
- "string"
], - "strategy": "update-existing"
}
], - "ref": "string",
- "state": "WORKING",
- "progress": 1,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z",
- "commit_oid": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "author_email": "user@example.com"
}
Returns a diff in JSON or JSON-Lines format depending on the supplied Accept header.
rev_range required | string Example: abcd1234...main A Kart revision range. This is usually of the form "X..Y" or "X...Y", where X and Y are resolvable to commit IDs. |
crs | string^EPSG:\d+$ Example: crs=EPSG:2193 Reproject geometries into the given EPSG CRS. |
Returns a diff in JSON or JSON-Lines format depending on the supplied Accept header.
rev_range required | string Example: abcd1234...main^ A Kart revision range. This is either:
|
commit | string |
abbrevCommit | string |
message | string |
authorName | string |
authorEmail | string |
authorTime | string |
authorTimeOffset | string |
committerName | string |
committerEmail | string |
committerTime | string |
committerTimeOffset | string |
parents | Array of strings |
abbrevParents | Array of strings |
refs | Array of strings |
[- {
- "commit": "e67a159dce20ccfb268e975d92f88a4d64a91d27",
- "abbrevCommit": "e67a159",
- "message": "Updated this api documentation",
- "authorName": "Jane Doe",
- "authorEmail": "jane.doe@example.com",
- "authorTime": "2021-07-07T03:50:42Z",
- "authorTimeOffset": "+01:00",
- "committerName": "Jane Doe",
- "committerEmail": "jane.doe@example.com",
- "committerTime": "2021-07-07T03:50:42Z",
- "committerTimeOffset": "+01:00",
- "parents": [
- "string"
], - "abbrevParents": [
- "string"
], - "refs": [
- "string"
]
}
]
commitish required | string Example: main^ |
id | string |
repository | string <url> |
path | string Path of the dataset inside the Kart repo |
url | string <url> |
title | string |
updated_at | string <date-time> When this dataset was last updated. |
updated_at_commit | string The commit at which this dataset was last updated. |
ref | string The ref or commit hash this dataset was found at |
type | string Value: "layer" |
kind | string Enum: "vector" "pointcloud" "raster" |
public_access | string |
settings | object |
user_permissions | Array of strings Items Enum: "find" "view" "download" "write" "admin" |
[- {
- "id": "dtV9pqYL3RtF9GK",
- "path": "property/boundaries",
- "title": "Property Boundaries",
- "updated_at": "2019-08-24T14:15:22Z",
- "updated_at_commit": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "ref": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "type": "layer",
- "kind": "vector",
- "public_access": "download",
- "settings": { },
- "user_permissions": [
- "find",
- "view",
- "download"
]
}
]
commitish required | string Example: main^ |
id | string |
repository | string <url> |
path | string Path of the dataset inside the Kart repo |
url | string <url> |
title | string |
updated_at | string <date-time> When this dataset was last updated. |
updated_at_commit | string The commit at which this dataset was last updated. |
ref | string The ref or commit hash this dataset was found at |
type | string Value: "layer" |
kind | string Enum: "vector" "pointcloud" "raster" |
public_access | string |
settings | object |
user_permissions | Array of strings Items Enum: "find" "view" "download" "write" "admin" |
created_at | string <date-time> When this dataset was first created. |
created_at_commit | string The commit which created this dataset. |
description | string <markdown> |
description_html | string <html> |
object (Group) | |
object | |
tags | Array of arrays |
{- "id": "dtV9pqYL3RtF9GK",
- "path": "property/boundaries",
- "title": "Property Boundaries",
- "updated_at": "2019-08-24T14:15:22Z",
- "updated_at_commit": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "ref": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "type": "layer",
- "kind": "vector",
- "public_access": "download",
- "settings": { },
- "user_permissions": [
- "find",
- "view",
- "download"
], - "created_at": "2019-08-24T14:15:22Z",
- "created_at_commit": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "description": "This dataset contains *property boundaries* for privately owned titles.",
- "description_html": "<p>This dataset contains <strong>property boundaries</strong> for privately owned titles.</p>",
- "group": {
- "id": 0,
- "url": "string",
- "name": "string",
- "country": "string",
- "org": "string",
- "access_requests_enabled": true
}, - "data": {
- "storage": "kart",
- "crs": {
- "id": "EPSG:4326",
- "name": "WGS 84",
- "kind": "geographic 2D",
- "unit_horizontal": "degree",
- "unit_vertical": null,
- "srid": 4326,
- "definition": "GEOGCRS[\"WGS 84\",DATUM[\"World Geodetic System 1984\",ELLIPSOID[\"WGS 84\",6378137,298.257223563,LENGTHUNIT[\"metre\",1]]],PRIMEM[\"Greenwich\",0,ANGLEUNIT[\"degree\",0.0174532925199433]],CS[ellipsoidal,2],AXIS[\"geodetic latitude (Lat)\",north,ORDER[1],ANGLEUNIT[\"degree\",0.0174532925199433]],AXIS[\"geodetic longitude (Lon)\",east,ORDER[2],ANGLEUNIT[\"degree\",0.0174532925199433]],USAGE[SCOPE[\"Horizontal component of 3D system.\"],AREA[\"World.\"],BBOX[-90,-180,90,180]],ID[\"EPSG\",4326]]\n"
}, - "primary_key_fields": [
- "id"
], - "fields": [
- {
- "name": "GEOMETRY",
- "type": "geometry"
}
], - "feature_count": 7001234,
- "point_count": 99123456789,
- "extent": {
- "type": "MultiPolygon",
- "coordinates": [
- [
- [
- [
- 0,
- 0
]
]
]
]
}, - "gridded_extent": "01030000000100000015000000874575C6F9D76540B93C039AC86B42C0A07E7718F8D76540CBF62CAEA16A42C099920439F8D7654001A6EDCB9E6A42C0754F099EF8D765405D1783549C6A42C0A2E4FC37F9D765401D6006A99A6A42C0DCAE32EFF9D765403C78340B9A6A42C0CA4AF99555D8654063DE95A1946A42C01708794C56D86540858DD926956A42C0550789E856D865403A080EB8966A42C05D2DA55257D86540DCD5BE18996A42C0F049D07A57D8654018BD33ED9B6A42C079378D2B59D86540709696D8C26B42C0046F050B59D8654059FFEABAC56B42C0B21D02A658D86540817C6D32C86B42C092910C0C58D8654087DCFCDDC96B42C0B6CFD25457D865401B49D67BCA6B42C0260D4DABFBD765408A4FE8E5CF6B42C06D0EC9F4FAD7654037869E60CF6B42C0E4A8B658FAD7654019FB57CFCD6B42C0C4759BEEF9D7654008C88E6ECB6B42C0874575C6F9D76540B93C039AC86B42C0",
- "geometry_type": "point",
- "geometry_field": "GEOMETRY, WKT, [X, Y], null",
- "classifications": [
- {
- "id": 3,
- "name": "Low Vegetation",
- "count": 1234567,
- "is_custom": false
}
], - "classification_flags": [
- {
- "name": "Synthetic",
- "count": 1234567
}
], - "point_density_sqm": 12345.6789
}, - "tags": [ ]
}
The response is given as a JSON object whose keys correspond to dataset paths.
commitish required | string Example: main^ |
additional property | object (RepoDatasetMeta) |
{- "property/boundaries": {
- "title": "Property Boundaries",
- "description": "This dataset contains *property boundaries* for privately owned titles.",
- "tags": [ ],
- "schema.json": [
- {
- "name": "Intensity",
- "dataType": "integer",
- "size": 16,
- "unsigned": true
}
]
}
}
sort | string Default: "name" Enum: "name" "-name" "date_added" "-date_added" "date_updated" "-date_updated" "point_count" "-point_count" "point_density" "-point_density" Specifies a different sort order for the returned tiles. (By default they are sorted by name.) Prefixing your sort with |
search | string Example: search=*auckland_AB34* Limits the returned tiles to those whose names match the given search query string. May contain wildcards |
x | float Example: x=79.3758 The x value of the point to query for. Must be used in conjunction with |
y | float Example: y=-35.2354 The y value of the point to query for in the requested CRS. Must be used in conjunction with |
radius | float [ 0 .. 10 ] Default: 1 Example: radius=5 The radius in meters to search for tiles in. |
crs | string Enum: "global" "native" "EPSG:XXXX" The CRS to use for the |
name | string |
point_count | integer |
oid | string |
source_oid | string |
gridded_extent | string (GriddedExtent) A hex-encoded WKB string describing a multipolygon covering a tile or dataset. |
object (CommitOidAndAuthorDate) | |
object (CommitOidAndAuthorDate) | |
Array of objects (PointCloudClassification) Counts of the classifications present in this tile's points. | |
Array of objects (PointCloudClassificationFlag) Counts of the classification flags present in this tile's points. | |
point_density_sqm | number An estimate of the density of this tile (number of points per square metre) |
[- {
- "name": "auckland_1_1.copc.laz",
- "point_count": 12345,
- "oid": "sha256:add2d011a19b39c0c8d70ed2313ad4955b1e0faf9a24394ab1a103930580a267",
- "source_oid": "sha256:d89966fb10b30d6987955ae1b97c752ba875de89da1881e2b05820878d17eab9",
- "extent": {
- "type": "MultiPolygon",
- "coordinates": [
- [
- [
- [
- 0,
- 0
]
]
]
]
}, - "gridded_extent": "01030000000100000015000000874575C6F9D76540B93C039AC86B42C0A07E7718F8D76540CBF62CAEA16A42C099920439F8D7654001A6EDCB9E6A42C0754F099EF8D765405D1783549C6A42C0A2E4FC37F9D765401D6006A99A6A42C0DCAE32EFF9D765403C78340B9A6A42C0CA4AF99555D8654063DE95A1946A42C01708794C56D86540858DD926956A42C0550789E856D865403A080EB8966A42C05D2DA55257D86540DCD5BE18996A42C0F049D07A57D8654018BD33ED9B6A42C079378D2B59D86540709696D8C26B42C0046F050B59D8654059FFEABAC56B42C0B21D02A658D86540817C6D32C86B42C092910C0C58D8654087DCFCDDC96B42C0B6CFD25457D865401B49D67BCA6B42C0260D4DABFBD765408A4FE8E5CF6B42C06D0EC9F4FAD7654037869E60CF6B42C0E4A8B658FAD7654019FB57CFCD6B42C0C4759BEEF9D7654008C88E6ECB6B42C0874575C6F9D76540B93C039AC86B42C0",
- "first_commit": {
- "oid": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "author_date": "2019-08-24T14:15:22Z"
}, - "last_commit": {
- "oid": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "author_date": "2019-08-24T14:15:22Z"
}, - "classifications": [
- {
- "id": 3,
- "name": "Low Vegetation",
- "count": 1234567,
- "is_custom": false
}
], - "classification_flags": [
- {
- "name": "Synthetic",
- "count": 1234567
}
], - "point_density_sqm": 12345.6789
}
]
Returns a list of tiles near the query-point, and returns a list of points (found within those tiles) near the query point. All tiles that are within radius
of the query point will be returned, unless further filters are specified, and they will be ordered using the specified sort-order. Only num_points
points will be returned, ordered by their distance from the query point. This endpoint be thought of as an extension to the query-tiles
endpoint: first the list of tiles is found, using the same logic as query-tiles
, then a list of points is found from within those tiles.
sort | string Default: "name" Enum: "name" "-name" "date_added" "-date_added" "date_updated" "-date_updated" "point_count" "-point_count" "point_density" "-point_density" Specifies a different sort order for the returned tiles. (By default they are sorted by name.) Prefixing your sort with |
search | string Example: search=*auckland_AB34* Limits the returned tiles to those whose names match the given search query string. May contain wildcards |
x | float Example: x=79.3758 The x value of the point to query for. Required. |
y | float Example: y=-35.2354 The y value of the point to query for in the requested CRS. Required. |
radius | float [ 0 .. 10 ] Default: 1 Example: radius=5 The radius in meters to search for tiles in. |
crs | string Enum: "global" "native" "EPSG:XXXX" The CRS to use for the |
num_points | integer [ 1 .. 1000 ] Default: 10 The number of points to return, starting with the point to the query-point. All returned points will be found within the returned tiles, but it may be that some of the returned tiles don't provide any points which are among the closest |
Array of objects (RepoPointCloudTile) >= 0 | |
Array of objects (RepoPointCloudPoint) >= 0 |
{- "tiles": [
- {
- "name": "auckland_1_1.copc.laz",
- "point_count": 12345,
- "oid": "sha256:add2d011a19b39c0c8d70ed2313ad4955b1e0faf9a24394ab1a103930580a267",
- "source_oid": "sha256:d89966fb10b30d6987955ae1b97c752ba875de89da1881e2b05820878d17eab9",
- "extent": {
- "type": "MultiPolygon",
- "coordinates": [
- [
- [
- [
- 0,
- 0
]
]
]
]
}, - "gridded_extent": "01030000000100000015000000874575C6F9D76540B93C039AC86B42C0A07E7718F8D76540CBF62CAEA16A42C099920439F8D7654001A6EDCB9E6A42C0754F099EF8D765405D1783549C6A42C0A2E4FC37F9D765401D6006A99A6A42C0DCAE32EFF9D765403C78340B9A6A42C0CA4AF99555D8654063DE95A1946A42C01708794C56D86540858DD926956A42C0550789E856D865403A080EB8966A42C05D2DA55257D86540DCD5BE18996A42C0F049D07A57D8654018BD33ED9B6A42C079378D2B59D86540709696D8C26B42C0046F050B59D8654059FFEABAC56B42C0B21D02A658D86540817C6D32C86B42C092910C0C58D8654087DCFCDDC96B42C0B6CFD25457D865401B49D67BCA6B42C0260D4DABFBD765408A4FE8E5CF6B42C06D0EC9F4FAD7654037869E60CF6B42C0E4A8B658FAD7654019FB57CFCD6B42C0C4759BEEF9D7654008C88E6ECB6B42C0874575C6F9D76540B93C039AC86B42C0",
- "first_commit": {
- "oid": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "author_date": "2019-08-24T14:15:22Z"
}, - "last_commit": {
- "oid": "42cd7929aa9aaca1782c6e75f552459ca41a7c66",
- "author_date": "2019-08-24T14:15:22Z"
}, - "classifications": [
- {
- "id": 3,
- "name": "Low Vegetation",
- "count": 1234567,
- "is_custom": false
}
], - "classification_flags": [
- {
- "name": "Synthetic",
- "count": 1234567
}
], - "point_density_sqm": 12345.6789
}
], - "points": [
- {
- "X": 79.3758,
- "Y": -35.2354,
- "Z": 2.50071,
- "Intensity": 0,
- "ReturnNumber": 1,
- "NumberOfReturns": 2,
- "ScanDirectionFlag": 0,
- "EdgeOfFlightLine": 0,
- "Classification": 12,
- "ScanAngleRank": -15,
- "UserData": 0,
- "PointSourceId": 4,
- "GpsTime": 62242510.31,
- "ScanChannel": 0,
- "ClassFlags": 0,
- "Red": 25,
- "Green": 182,
- "Blue": 41,
- "Infrared": 127
}
]
}
Returns detail about the user who is currently authenticated with the API.
id | integer |
url | string <url> |
first_name | string |
last_name | string |
country | string |
string | |
is_locked | boolean |
is_site_admin | boolean |
seat_type | string |
date_joined | string |
avatar_url | string <url> |
object | |
Array of objects (UserContextList) >= 0 | |
remote_auth | boolean
|
object (OrgSerializer) | |
locale | string |
object | |
is_authenticated | boolean |
object |
{- "id": 482,
- "first_name": "Jennifer",
- "last_name": "Exampleton",
- "country": "US",
- "email": "jennifer.exampleton@example.com",
- "is_locked": false,
- "is_site_admin": false,
- "seat_type": "none",
- "date_joined": "2020-05-16T23:37:45.632286Z",
- "avatar_url": "string",
- "capabilities": {
- "administer_data": true,
- "enable_kart_clone": true,
- "can_see_repodatasets": true,
- "can_see_site_tickets": true,
- "can_manage_own_tickets": true,
- "can_view_reports": true
}, - "contexts": [
- {
- "name": "string",
- "type": "string",
- "context": "string",
- "role": "string",
- "domain": "string",
- "org": { },
- "flags": { },
- "logo": "string",
- "background_color": "1e1b25"
}
], - "remote_auth": false,
- "remote_auth_org": {
- "id": "o9xzyQC27q13FwT",
- "name": "Example Org",
- "country": "US",
- "logo_owner_url": "string",
- "logo_square_url": "string",
- "slug": "example-org"
}, - "locale": "en-US",
- "geoip": {
- "country_code": "AU",
- "state_code": "string",
- "name": "Australia",
- "key": "global/australia/australia"
}, - "is_authenticated": true,
- "notification_preferences": {
- "email_when_download_ready": true
}
}
Get the groups configured for this site.
q | string Free-text search query |
access_requests_enabled | boolean Filter groups with or without access requests |
id | number |
url | string <url> |
name | string |
country | string |
org | string |
access_requests_enabled | boolean |
[- {
- "id": 0,
- "url": "string",
- "name": "string",
- "country": "string",
- "org": "string",
- "access_requests_enabled": true
}
]
id | number |
url | string <url> |
name | string |
country | string |
org | string |
access_requests_enabled | boolean |
{- "id": 0,
- "url": "string",
- "name": "string",
- "country": "string",
- "org": "string",
- "access_requests_enabled": true
}
Returns a list of permissions granted to users within this group.
id | string |
object (RelatedUserSerializer) | |
permission | string Enum: "view" "manage_data" "admin" Valid options can be determined via an OPTIONS request. Note that |
url | string <url> |
[- {
- "id": "user.99999",
- "user": {
- "id": 99999,
- "first_name": "Jane",
- "last_name": "Dory",
- "url": "string",
- "country": "US"
}, - "permission": "view",
}
]
Allows the caller to make multiple changes to the group permissions. Each action in the list has one of three action
types that can be performed:
create
- add a new permission for a user to this groupupdate
- modify the permissions for an existing permissiondelete
- delete a permission that currently existsThe update
and delete
operations require the url
to the permission as returned in the GET
request to this endpoint.
The value
object specifies the user
(by ID) and the permission to grant.
action | string Enum: "create" "update" "delete" |
object | |
url | string Required for |
[- {
- "action": "update",
- "value": {
- "permission": "view",
- "user": 99999
},
}
]
id | string |
object (RelatedUserSerializer) | |
permission | string Enum: "view" "manage_data" "admin" Valid options can be determined via an OPTIONS request. Note that |
url | string <url> |
{- "id": "user.99999",
- "user": {
- "id": 99999,
- "first_name": "Jane",
- "last_name": "Dory",
- "url": "string",
- "country": "US"
}, - "permission": "view",
}
permission | string Enum: "view" "manage_data" "admin" |
user | number |
id | string |
object (RelatedUserSerializer) | |
permission | string Enum: "view" "manage_data" "admin" Valid options can be determined via an OPTIONS request. Note that |
url | string <url> |
{- "permission": "view",
- "user": 99999
}
{- "id": "user.99999",
- "user": {
- "id": 99999,
- "first_name": "Jane",
- "last_name": "Dory",
- "url": "string",
- "country": "US"
}, - "permission": "view",
}
Fetches an existing access request to the group for the currently authenticated user.
id | number |
url | string <url> |
created_at | string |
{- "id": 5,
- "created_at": "2020-05-16T23:37:45.632286Z"
}
Fetches all outstanding access requests for the group.
id | number |
url | string <url> |
created_at | string |
object (RelatedUserSerializer) |
[- {
- "id": 5,
- "created_at": "2020-05-16T23:37:45.632286Z",
- "user": {
- "id": 99999,
- "first_name": "Jane",
- "last_name": "Dory",
- "url": "string",
- "country": "US"
}
}
]
id | integer |
title | string (License Title) |
type | string |
jurisdiction | string |
version | string |
url | string |
slug | string |
text | string |
url_external | string |
object Layers and documents this license belongs to |
[- {
- "id": "1",
- "title": "Creative Commons Attribution 3.0 New Zealand",
- "type": "cc-by",
- "jurisdiction": "nz",
- "version": "3.0",
- "slug": "attribution-3-0-new-zealand",
- "text": "THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENCE.",
- "linked_item_counts": {
- "layers": 0,
- "documents": 0
}
}
]
Note that only custom licenses can be created.
title | string |
text | string Body of the license text. |
slug | string URL-friendly name for this license. Will be generated automatically if not provided. |
url_external | string |
{- "title": "The Unlicense",
- "text": "string",
- "slug": "string",
- "url_external": "string"
}
id | integer |
title | string (License Title) |
type | string |
jurisdiction | string |
version | string |
url | string |
slug | string |
text | string |
url_external | string |
object Layers and documents this license belongs to |
{- "id": "1",
- "title": "Creative Commons Attribution 3.0 New Zealand",
- "type": "cc-by",
- "jurisdiction": "nz",
- "version": "3.0",
- "slug": "attribution-3-0-new-zealand",
- "text": "THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENCE.",
- "linked_item_counts": {
- "layers": 0,
- "documents": 0
}
}
Note that only custom licenses can be updated.
title | string |
text | string |
slug | string URL-friendly name for this license. Will be generated automatically if not provided. |
url_external | string |
description | string |
collected | string <date> |
object (LayersLicenseSerializer) | |
supplier_reference | string |
version_reference | string |
default_style_id | number |
publish | boolean |
mapstream_id | number |
categories | string |
tags | Array of arrays |
permissions | string <url> |
publish_to_catalog_services | boolean |
object (LayersAutoupdateSerializer) | |
required | object (LayersDataSerializer) |
tilegrids | Array of arrays |
id | integer |
title | string (License Title) |
type | string |
jurisdiction | string |
version | string |
url | string |
slug | string |
text | string |
url_external | string |
object Layers and documents this license belongs to |
{- "title": "The Unlicense",
- "text": "string",
- "slug": "string",
- "url_external": "string",
- "description": "These points are totally fictional!",
- "collected": "2013-01-01",
- "license": {
- "id": 3,
- "title": "Creative Commons Attribution 3.0 New Zealand",
- "type": 1,
- "type_name": "Creative Commons license",
}, - "supplier_reference": "TIVPAS",
- "version_reference": "added more data",
- "default_style_id": 3,
- "publish": true,
- "mapstream_id": 3,
- "categories": "topographic/nz-topo-offshore-islands-data/terrain",
- "tags": "tag2, tag2",
- "permissions": "topographic/nz-topo-offshore-islands-data/terrain",
- "publish_to_catalog_services": true,
- "autoupdate": {
- "behavior": "yes-noschema",
- "schedule": "0 0 0,4 * *"
}, - "data": {
- "datasources": {
- "id": 345
}, - "encoding": "utf-8",
- "crs": "EPSG:4326",
- "elevation_field": "Z",
- "primary_key_field": "id",
- "geometry_field": "GEOMETRY, WKT, [X, Y], null"
}, - "tilegrids": "[]"
}
{- "id": "1",
- "title": "Creative Commons Attribution 3.0 New Zealand",
- "type": "cc-by",
- "jurisdiction": "nz",
- "version": "3.0",
- "slug": "attribution-3-0-new-zealand",
- "text": "THE WORK (AS DEFINED BELOW) IS PROVIDED UNDER THE TERMS OF THIS CREATIVE COMMONS PUBLIC LICENCE.",
- "linked_item_counts": {
- "layers": 0,
- "documents": 0
}
}
name | string |
slug | string |
key | string |
url | string <url> |
children | Array of objects (CategoryItemSerializer) >= 0 |
[- {
- "name": "Category 3",
- "slug": "category-3",
- "key": "category-1/category-2/category-3",
- "children": [
- { }
]
}
]
name required | string |
slug | string A URL-friendly name for the category. Will be generated automatically if not provided. Must be unique within the current set of children. |
parent | string <url> The URL of the parent category. |
{- "name": "Category 1",
- "slug": "string",
- "parent": "string"
}
name | string |
slug | string |
key | string |
url | string <url> |
children | Array of objects (CategoryItemSerializer) >= 0 |
{- "name": "Category 3",
- "slug": "category-3",
- "key": "category-1/category-2/category-3",
- "children": [
- { }
]
}
subject | string |
slug | string A URL-friendly name for the category. Will be generated automatically if not provided. Must be unique within the current set of children. |
parent | string <url> The URL of the parent category. |
name | string |
slug | string |
key | string |
url | string <url> |
children | Array of objects (CategoryItemSerializer) >= 0 |
{- "subject": "Category 1",
- "slug": "string",
- "parent": "string"
}
{- "name": "Category 3",
- "slug": "category-3",
- "key": "category-1/category-2/category-3",
- "children": [
- { }
]
}
kind | string (CoordinateSystemKind) Enum: "geographic 2D" "geocentric" "geographic 3D" "projected" "vertical" "compound" |
q | string Example: q=pacific+ocean Free text search query |
id | string |
url | string <url> |
name | string |
kind | string (CoordinateSystemKind) Enum: "geographic 2D" "geocentric" "geographic 3D" "projected" "vertical" "compound" |
unit_horizontal | string or null Null for vertical coordinate systems |
unit_vertical | string or null Non-null for vertical and compound coordinate systems; null otherwise |
url_external | string <url> |
srid | integer or null Deprecated Integer identifier for EPSG coordinate systems only. Use |
[- {
- "id": "EPSG:4326",
- "name": "WGS 84",
- "kind": "geographic 2D",
- "unit_horizontal": "degree",
- "unit_vertical": null,
- "srid": 4326
}
]
id required | any Example: EPSG:4326 |
id | string |
url | string <url> |
name | string |
kind | string (CoordinateSystemKind) Enum: "geographic 2D" "geocentric" "geographic 3D" "projected" "vertical" "compound" |
unit_horizontal | string or null Null for vertical coordinate systems |
unit_vertical | string or null Non-null for vertical and compound coordinate systems; null otherwise |
url_external | string <url> |
srid | integer or null Deprecated Integer identifier for EPSG coordinate systems only. Use |
definition | string |
{- "id": "EPSG:4326",
- "name": "WGS 84",
- "kind": "geographic 2D",
- "unit_horizontal": "degree",
- "unit_vertical": null,
- "srid": 4326,
- "definition": "GEOGCRS[\"WGS 84\",DATUM[\"World Geodetic System 1984\",ELLIPSOID[\"WGS 84\",6378137,298.257223563,LENGTHUNIT[\"metre\",1]]],PRIMEM[\"Greenwich\",0,ANGLEUNIT[\"degree\",0.0174532925199433]],CS[ellipsoidal,2],AXIS[\"geodetic latitude (Lat)\",north,ORDER[1],ANGLEUNIT[\"degree\",0.0174532925199433]],AXIS[\"geodetic longitude (Lon)\",east,ORDER[2],ANGLEUNIT[\"degree\",0.0174532925199433]],USAGE[SCOPE[\"Horizontal component of 3D system.\"],AREA[\"World.\"],BBOX[-90,-180,90,180]],ID[\"EPSG\",4326]]\n"
}