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
AuthorizationSimple URL token based authentication.
Note: despite in: query above (OpenAPI cannot express this location), the key is not a query-string parameter. It is passed as a matrix-style path segment immediately after /services, in the form ;key=<token>. For example:
GET /services;key=abcdef0123456789abcdef0123456789/wmts/1.0.0/WMTSCapabilities.xml
keyCookie 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.
sessionidList 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/totalFor 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) |
| id | number |
| name | string |
| created_at | string |
| state | string Enum: "complete" "processing" "cancelled" "error" "gone"
|
| url | string <url> |
| download_url | string <url> |
{- "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": 1,
- "name": "string",
- "created_at": "2020-05-16T23:37:45.632286Z",
- "state": "complete",
- "url": "string",
- "download_url": "string"
}| 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`
]
}
}
errorsitemsno-items: You must request at least one item \duplicate-items: Duplicate items were requestedindex]itemInvalid hyperlink - No URL match.crsInvalid CRSUnknown CRSformatsNo 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-crsmissing-crsno-layersover-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_reasonscommercial-data-not-supportedoutside-extentonline-onlyinvalid-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.
Query raster or grid layers to get band values at a point location. Returns band values if the point is within the layer extent. When querying multiple layers, results are returned as a JSON object with layer IDs as keys.
| key | string (ApiKeyProperty) Example: key=abc123def456 Your Koordinates API key. Not required if using session authentication (cookie) or the Authorization header (e.g., 'Authorization: Key |
| layer required | string Example: layer=1132,1145,1156 The ID(s) of the raster or grid layer(s) to get results from. Can be a single layer ID or multiple comma-separated IDs. Maximum 10 layers. |
| x required | number (LongitudeProperty) Example: x=174.77694 Longitude of the point you want to query |
| y required | number (LatitudeProperty) Example: y=-41.27831 Latitude of the point you want to query |
| callback | string (CallbackProperty) Example: callback=myCallback Only available for JSON formats. The name of the JSONP callback function to wrap the response in |
object Results grouped by layer ID |
{- "rasterQuery": {
- "1132": {
- "type": "rasterQuery",
- "layer": 1132,
- "x": 174.77694,
- "y": -41.27831,
- "status": "ok",
- "bands": [
- {
- "band": 1,
- "value": 245.5
}
]
}, - "1145": {
- "type": "rasterQuery",
- "layer": 1145,
- "x": 174.77694,
- "y": -41.27831,
- "status": "outside-extent"
}
}
}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.json
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.
Query vector layers to find features near a point location. Returns features within the specified radius, ordered by distance from the query point. When querying multiple layers, results are returned as a JSON object with layer IDs as keys.
| key | string (ApiKeyProperty) Example: key=abc123def456 Your Koordinates API key. Not required if using session authentication (cookie) or the Authorization header (e.g., 'Authorization: Key |
| layer required | string Example: layer=743,856,912 The ID(s) of the vector layer(s) to get results from. Can be a single layer ID or multiple comma-separated IDs. Maximum 20 layers. |
| x required | number (LongitudeProperty) Example: x=174.77694 Longitude of the point you want to query |
| y required | number (LatitudeProperty) Example: y=-41.27831 Latitude of the point you want to query |
| max_results | integer [ 1 .. 100 ] Default: 1 Maximum number of features to return for each layer |
| radius | integer [ 0 .. 100000 ] Default: 1000 Distance in meters to query around the specified point |
| geometry | boolean (GeometryProperty) Default: false Whether to include the geometry for each feature result |
| with_field_names | boolean (WithFieldNamesProperty) Default: false Whether to include an ordered list of field names. Availability: 1.1 |
| precision | integer [ 0 .. 15 ] Default: 8 Number of decimal places for GeoJSON coordinates in the response. 8 decimal places gives ~1.1mm precision at the equator. |
| callback | string (CallbackProperty) Example: callback=myCallback Only available for JSON formats. The name of the JSONP callback function to wrap the response in |
object Results grouped by layer ID |
{- "vectorQuery": {
- "743": {
- "type": "vectorQuery",
- "layer": 743,
- "x": 174.77694,
- "y": -41.27831,
- "results": [
- {
- "__distance__": 0,
- "OBJECTID": 12345,
- "NAME": "Example Feature"
}, - {
- "__distance__": 523,
- "OBJECTID": 12346,
- "NAME": "Another Feature"
}
]
}
}
}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.
Query a set (collection of layers) to find features near a point location. Returns results from all
layers in the set (both vector and raster). Results are returned as a JSON object with a collectionQuery
property containing a layers array in the correct order. Each layer result includes the layer ID and title.
Sets also expose configurable data services; see the Services documentation to list, enable/disable and manage permissions on them.
| key | string (ApiKeyProperty) Example: key=abc123def456 Your Koordinates API key. Not required if using session authentication (cookie) or the Authorization header (e.g., 'Authorization: Key |
| set required | integer The ID of the set to query. If the set contains more than 500 layers, the query will fail. |
| x required | number (LongitudeProperty) Example: x=174.77694 Longitude of the point you want to query |
| y required | number (LatitudeProperty) Example: y=-41.27831 Latitude of the point you want to query |
| radius | integer [ 0 .. 100000 ] Default: 1000 Distance in meters to query around the specified point |
| geometry | boolean (GeometryProperty) Default: false Whether to include the geometry for each feature result |
| with_field_names | boolean (WithFieldNamesProperty) Default: false Whether to include an ordered list of field names. Availability: 1.1 |
| precision | integer [ 0 .. 15 ] Default: 8 Number of decimal places for GeoJSON coordinates in the response. 8 decimal places gives ~1.1mm precision at the equator. |
| callback | string (CallbackProperty) Example: callback=myCallback Only available for JSON formats. The name of the JSONP callback function to wrap the response in |
| max_results | integer [ 1 .. 5 ] Default: 1 Maximum number of features to return for each layer |
object |
{- "collectionQuery": {
- "type": "collectionQuery",
- "set": 101,
- "x": 174.77694,
- "y": -41.27831,
- "layers": [
- {
- "id": 743,
- "title": "Electoral Districts",
- "type": "VECTOR",
- "results": [
- {
- "__distance__": 0,
- "DISTRICT_NAME": "Wellington Central"
}
]
}, - {
- "id": 1132,
- "title": "Elevation",
- "type": "GRID",
- "results": {
- "status": "ok",
- "bands": [
- {
- "band": 1,
- "value": 45.2
}
]
}
}
]
}
}The Coordinate Systems API provides simple CRS lookup and search for the coordinate systems supported by the Koordinates platform.
| 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 | string 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"
}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": "[]",
- "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": "[]",
- "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": "[]",
- "user": {
- "id": 3,
- "name": "Bob Jones"
}, - "last_scanned_at": null,
- "scan_schedule": "@daily",
- "options": "{}",
- "metadata": null,
}Returns details of a source.
| id required | integer The source ID |
| 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": "[]",
- "user": {
- "id": 3,
- "name": "Bob Jones"
}, - "last_scanned_at": null,
- "scan_schedule": null,
- "options": "{}",
- "metadata": null
}Note that:
You can't change the type of a source. You can't upload more files into an upload source. If you need to upload more files you should create a new source. The following fields are editable (other fields will be ignored):
user / groupoptions (note: existing options will be preserved if they're not specified here)| id required | integer The source ID |
| description | string |
| 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 |
{- "description": "Harbour Imagery (4m/px)"
}{- "id": 1,
- "name": "harbour-images.zip",
- "type": "upload",
- "description": "Harbour Imagery (4m/px)",
- "description_html": "<p>Harbour Imagery (4m/px)</p>",
- "categories": "[]",
- "user": {
- "id": 3,
- "name": "Bob Jones"
}, - "last_scanned_at": null,
- "scan_schedule": null,
- "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.
| id required | integer The source ID |
| id | number |
| url | string <url> |
| status | string |
| started_at | string |
| completed_at | string |
object | |
| log | string <url> |
{- "id": 4,
- "status": "completed",
- "started_at": "2013-10-13T02:53:28Z",
- "completed_at": "2012-10-13T02:53:47Z",
- "change_counts": {
- "deleted": 0,
- "updated": 3,
- "added": 0
},
}Starts a scan for this source. No post data is required.
| id required | integer The source ID |
| 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": "[]",
- "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 required | integer The source ID |
| scan required | string The scan ID (an integer), or the literal value 'latest' to use the most recent scan. |
| 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
}Gets a log for a scan. By default this is returned as text/plain, but you can request JSON via the Accept header.
| id required | integer The source ID |
| scan required | string The scan ID (an integer), or the literal value 'latest' to use the most recent scan. |
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 required | integer The source ID |
| 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:
tablevectorrastergridattribute-gridformat 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 required | integer The source ID |
| datasource required | string The datasource ID |
| id | number |
| url | string <url> |
| title | string |
| data_type | string |
| geometry_type | string |
| updated_at | string |
| format | string |
| crs | string |
Array of objects | |
| num_dims | number |
| num_features | number |
| num_bands | number or null |
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": [
- {
- "type": "integer",
- "name": "OBJECTID"
}
], - "num_dims": 2,
- "num_features": 1500,
- "num_bands": null,
- "extent": {
- "type": "Polygon",
- "coordinates": [
- [
- -1,
- -1
]
]
}, - "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>
| id required | integer The source ID |
| datasource required | string The datasource ID |
| 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": "eng"
}List layers (at layers/) and tables (at tables/) respectively. List views follow the Catalog API semantics.
| publishing | boolean Example: publishing=true Filter by whether the layer/table is currently being published. When |
| publish_errored | boolean Example: publish_errored=true Filter by whether the layer/table's active publish has errored. When |
| 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> URL to the services configured for this layer. See the Services documentation for how to list, enable/disable and set permissions on services. |
| 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)
| layer_id required | integer ID of the layer or table |
| 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> URL to the services configured for this layer. See the Services documentation for how to list, enable/disable and set permissions on services. |
| 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
}Change the owner (user or group) of a layer or table. Ownership takes effect immediately and is not tied to publishing a new version.
| layer_id required | integer ID of the layer or table |
object | |
object |
| 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> URL to the services configured for this layer. See the Services documentation for how to list, enable/disable and set permissions on services. |
| 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 |
{- "user": {
- "id": 3
}, - "group": {
- "id": 7
}
}{- "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.
| layer_id required | integer ID of the layer or table |
| 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/.
| layer_id required | integer ID of the layer or table |
| title | string |
| description | string |
| collected | string <date> |
object | |
| supplier_reference | string |
| version_reference | string |
| default_style_id | integer |
| publish | boolean |
| 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,
- "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
}{ }| layer_id required | integer ID of the layer or table |
| version_id required | string ID of the version |
| 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> URL to the services configured for this layer. See the Services documentation for how to list, enable/disable and set permissions on services. |
| 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
}| layer_id required | integer ID of the layer or table |
| version_id required | string ID of the version |
| id | number |
| url | string <url> |
| title | string |
| data_type | string |
| geometry_type | string |
| updated_at | string |
| format | string |
| crs | string |
Array of objects | |
| num_dims | number |
| num_features | number |
| num_bands | number or null |
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": [
- {
- "type": "integer",
- "name": "OBJECTID"
}
], - "num_dims": 2,
- "num_features": 1500,
- "num_bands": null,
- "extent": {
- "type": "Polygon",
- "coordinates": [
- [
- -1,
- -1
]
]
}, - "metadata": null,
- "arcgis_folder_service_path": "Bob/MapServer",
- "arcgis_geometry_type": "esriGeometryPolygon",
- "arcgis_layer_name": "Geology",
- "arcgis_type": "Feature Layer"
}
]| layer_id required | integer ID of the layer or table |
| version_id required | string ID of the version |
| url | string <url> |
| layer_id required | integer ID of the layer or table |
object (LayersAutoupdateSerializer) |
{- "autoupdate": {
- "behavior": "yes-noschema",
- "schedule": "0 0 0,4 * *"
}
}| layer_id required | integer ID of the layer or table |
object (LayersAutoupdateSerializer) |
object (LayersAutoupdateSerializer) |
{- "autoupdate": {
- "behavior": "yes-noschema",
- "schedule": "0 0 0,4 * *"
}
}{- "autoupdate": {
- "behavior": "yes-noschema",
- "schedule": "0 0 0,4 * *"
}
}| 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 |
object |
| id | number |
| url | string <url> |
| created_at | string |
object |
{- "name": "Example Document",
}{- "id": 2,
- "created_at": "2015-04-12T21:43:59.200Z",
- "created_by"": {
- "id": 1,
- "first_name": "Jane",
- "last_name": "Doe",
- "country": "US"
}
}| id required | integer Document ID. |
| 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 |
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": {
- "datasources": null
}, - "categories": [
- [ ]
], - "tags": [
- [ ]
], - "license": null,
- "metadata": null,
- "publish_to_catalog_services": false
}Change the owner (user or group) of a document. Ownership takes effect immediately and is not tied to publishing a new version.
| id required | integer Document ID. |
object | |
object |
| 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 |
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 |
{- "user": {
- "id": 3
}, - "group": {
- "id": 7
}
}{- "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": {
- "datasources": null
}, - "categories": [
- [ ]
], - "tags": [
- [ ]
], - "license": null,
- "metadata": null,
- "publish_to_catalog_services": false
}| id required | integer Document ID. |
| 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"
}
}| id required | integer Document ID. |
| version required | string Document version ID. |
| error | string |
{- "error": "This version isn't a draft."
}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"
}
]| title required | string |
| id | string |
| full_name | string |
| url | string <url> |
| clone_location_ssh | string |
| clone_location_https | string |
{- "title": "string"
}{- "id": "string",
- "full_name": "string",
- "url": "string",
- "clone_location_ssh": "string",
- "clone_location_https": "string"
}| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| 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"
}| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| 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"
}| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| 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
}| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| name | string |
| target | string |
| shorthand | string |
[- {
- "name": "master",
- "target": "e67a159dce20ccfb268e975d92f88a4d64a91d27",
- "shorthand": "master"
}
]| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| commitish required | string The commit or ref to show. |
| 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"
]
}| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| 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"
}
]| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| message | string A commit message to associate with the import |
| ref | string The branch or tag to import to |
Array of objects (RepoDatasetImportSerializer) |
| 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> |
{- "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",
- "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"
}| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| import_id required | string The ID of the import. |
| 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.
| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| 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.
| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| 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"
]
}
]| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| 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"
]
}
]| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| commitish required | string Example: main^ |
| dataset_path required | string The path of the dataset within the repo. |
| 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",
- "type": "normal",
- "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
}, - {
- "name": "Synthetic",
- "count": 1234567
}, - {
- "name": "Synthetic",
- "count": 1234567
}, - {
- "name": "Synthetic",
- "count": 1234567
}
], - "point_density_sqm": 12345.6789
}, - "tags": [ ]
}The response is given as a JSON object whose keys correspond to dataset paths.
| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| 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
}
]
}
}| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| ref required | string Branch, tag or commit reference. |
| dataset_path required | string The path of the point-cloud dataset within the repo. |
| 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 | number Example: x=79.3758 The x value of the point to query for. Must be used in conjunction with |
| y | number Example: y=-35.2354 The y value of the point to query for in the requested CRS. Must be used in conjunction with |
| radius | number [ 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) = 4 items 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
}, - {
- "name": "Synthetic",
- "count": 1234567
}, - {
- "name": "Synthetic",
- "count": 1234567
}, - {
- "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.
| org required | string The namespace that owns the repo: an organisation slug, or the owning user's public_id for personally-owned repos. |
| slug required | string The slug identifying the repo within the organisation. |
| ref required | string Branch, tag or commit reference. |
| dataset_path required | string The path of the point-cloud dataset within the repo. |
| 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 | number Example: x=79.3758 The x value of the point to query for. Required. |
| y | number Example: y=-35.2354 The y value of the point to query for in the requested CRS. Required. |
| radius | number [ 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
}, - {
- "name": "Synthetic",
- "count": 1234567
}, - {
- "name": "Synthetic",
- "count": 1234567
}, - {
- "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
}
]
}A catalog item is a catalog entry that links to a resource — either
hosted on a Koordinates site or elsewhere. A catalog item usually has one
or more services attached, which is how the linked resource is
accessed (for example 3D Tiles, WMTS or WFS). Each item is addressed by a
public ID prefixed with c (for example c3TRfmHwdwpc9QY).
Catalog items are versioned. The published version is visible to users; the draft version, if it exists, can be edited and then published. See the Data Management Overview for how versioning and publishing work across the platform.
Each catalog item version exposes a number of sub-resources:
dc) formats, plus
simplified representations.Each catalog item exposes the data services configured for it (WMTS, WFS, exports, etc.). See the Services documentation to list, enable/disable, and manage permissions on these services.
Draft editing, publishing, deletion and permission management endpoints are administrative.
| id | string Catalog item public ID (prefixed |
| url | string <uri> API detail URL for this catalog item. |
| type | string Always |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item kind, derived from the catalog item subtype. The base catalog item serializes as an empty string; subtypes serialize as |
| title | string Display title. |
| description | string Markdown-formatted description. |
| first_published_at | string <date-time> Timestamp the item was first published, if ever. |
| published_at | string <date-time> Timestamp of the published version, if any. |
| featured_at | string <date-time> Timestamp this item was featured, if any. |
| service_capabilities | Array of strings Capabilities provided by the item's enabled services. |
| user_capabilities | object Capabilities available to the requesting user for this item. |
| geometry_type | string Primary geometry type. |
| num_views | integer View count. |
| services | string <uri> URL to the services configured for this catalog item. See the Services documentation. |
[- {
- "id": "c3TRfmHwdwpc9QY",
- "type": "catalog-item",
- "kind": "external",
- "title": "Road Centerlines",
- "description": "string",
- "first_published_at": "2019-08-24T14:15:22Z",
- "published_at": "2019-08-24T14:15:22Z",
- "featured_at": "2019-08-24T14:15:22Z",
- "service_capabilities": [
- "string"
], - "user_capabilities": { },
- "geometry_type": "polygon",
- "num_views": 1024,
}
]| title required | string Display title for the catalog item |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item subtype. Omit (or send an empty string) for the base catalog item; otherwise one of |
| description | string Markdown-formatted description |
| id | string Catalog item public ID (prefixed |
| url | string <uri> API detail URL for this catalog item. |
| type | string Always |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item kind, derived from the catalog item subtype. The base catalog item serializes as an empty string; subtypes serialize as |
| title | string Display title. |
| description | string Markdown-formatted description. |
| first_published_at | string <date-time> Timestamp the item was first published, if ever. |
| published_at | string <date-time> Timestamp of the published version, if any. |
| featured_at | string <date-time> Timestamp this item was featured, if any. |
| service_capabilities | Array of strings Capabilities provided by the item's enabled services. |
| user_capabilities | object Capabilities available to the requesting user for this item. |
| geometry_type | string Primary geometry type. |
| num_views | integer View count. |
| services | string <uri> URL to the services configured for this catalog item. See the Services documentation. |
| publisher | object The publishing user or group. |
| categories | Array of objects |
| tags | Array of strings |
| geotags | Array of objects |
| attachments | Array of objects Documents attached to this version. |
| settings | object Item settings/flags. |
| metadata | string <uri> URL to the XML metadata endpoints for this version. |
| version | object The version represented by this response. |
| this_version | string <uri> |
| published_version | string <uri> |
| latest_version | string <uri> |
| request_access | string <uri> URL to request access to this item. |
| data | object 3D Tiles items only; datasource configuration. |
| config | object External items only; external service configuration. |
{- "title": "string",
- "kind": "",
- "description": "string"
}{- "id": "c3TRfmHwdwpc9QY",
- "type": "catalog-item",
- "kind": "external",
- "title": "Road Centerlines",
- "description": "string",
- "first_published_at": "2019-08-24T14:15:22Z",
- "published_at": "2019-08-24T14:15:22Z",
- "featured_at": "2019-08-24T14:15:22Z",
- "service_capabilities": [
- "string"
], - "user_capabilities": { },
- "geometry_type": "polygon",
- "num_views": 1024,
- "publisher": { },
- "categories": [
- { }
], - "tags": [
- "string"
], - "geotags": [
- { }
], - "attachments": [
- { }
], - "settings": { },
- "version": { },
- "data": { },
- "config": { }
}| id | string Catalog item public ID (prefixed |
| url | string <uri> API detail URL for this catalog item. |
| type | string Always |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item kind, derived from the catalog item subtype. The base catalog item serializes as an empty string; subtypes serialize as |
| title | string Display title. |
| description | string Markdown-formatted description. |
| first_published_at | string <date-time> Timestamp the item was first published, if ever. |
| published_at | string <date-time> Timestamp of the published version, if any. |
| featured_at | string <date-time> Timestamp this item was featured, if any. |
| service_capabilities | Array of strings Capabilities provided by the item's enabled services. |
| user_capabilities | object Capabilities available to the requesting user for this item. |
| geometry_type | string Primary geometry type. |
| num_views | integer View count. |
| services | string <uri> URL to the services configured for this catalog item. See the Services documentation. |
[- {
- "id": "c3TRfmHwdwpc9QY",
- "type": "catalog-item",
- "kind": "external",
- "title": "Road Centerlines",
- "description": "string",
- "first_published_at": "2019-08-24T14:15:22Z",
- "published_at": "2019-08-24T14:15:22Z",
- "featured_at": "2019-08-24T14:15:22Z",
- "service_capabilities": [
- "string"
], - "user_capabilities": { },
- "geometry_type": "polygon",
- "num_views": 1024,
}
]| catalogitem_id required | string The catalog item public id. |
| id | string Catalog item public ID (prefixed |
| url | string <uri> API detail URL for this catalog item. |
| type | string Always |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item kind, derived from the catalog item subtype. The base catalog item serializes as an empty string; subtypes serialize as |
| title | string Display title. |
| description | string Markdown-formatted description. |
| first_published_at | string <date-time> Timestamp the item was first published, if ever. |
| published_at | string <date-time> Timestamp of the published version, if any. |
| featured_at | string <date-time> Timestamp this item was featured, if any. |
| service_capabilities | Array of strings Capabilities provided by the item's enabled services. |
| user_capabilities | object Capabilities available to the requesting user for this item. |
| geometry_type | string Primary geometry type. |
| num_views | integer View count. |
| services | string <uri> URL to the services configured for this catalog item. See the Services documentation. |
| publisher | object The publishing user or group. |
| categories | Array of objects |
| tags | Array of strings |
| geotags | Array of objects |
| attachments | Array of objects Documents attached to this version. |
| settings | object Item settings/flags. |
| metadata | string <uri> URL to the XML metadata endpoints for this version. |
| version | object The version represented by this response. |
| this_version | string <uri> |
| published_version | string <uri> |
| latest_version | string <uri> |
| request_access | string <uri> URL to request access to this item. |
| data | object 3D Tiles items only; datasource configuration. |
| config | object External items only; external service configuration. |
{- "id": "c3TRfmHwdwpc9QY",
- "type": "catalog-item",
- "kind": "external",
- "title": "Road Centerlines",
- "description": "string",
- "first_published_at": "2019-08-24T14:15:22Z",
- "published_at": "2019-08-24T14:15:22Z",
- "featured_at": "2019-08-24T14:15:22Z",
- "service_capabilities": [
- "string"
], - "user_capabilities": { },
- "geometry_type": "polygon",
- "num_views": 1024,
- "publisher": { },
- "categories": [
- { }
], - "tags": [
- "string"
], - "geotags": [
- { }
], - "attachments": [
- { }
], - "settings": { },
- "version": { },
- "data": { },
- "config": { }
}| catalogitem_id required | string The catalog item public id. |
| id | string Catalog item public ID (prefixed |
| url | string <uri> API detail URL for this catalog item. |
| type | string Always |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item kind, derived from the catalog item subtype. The base catalog item serializes as an empty string; subtypes serialize as |
| title | string Display title. |
| description | string Markdown-formatted description. |
| first_published_at | string <date-time> Timestamp the item was first published, if ever. |
| published_at | string <date-time> Timestamp of the published version, if any. |
| featured_at | string <date-time> Timestamp this item was featured, if any. |
| service_capabilities | Array of strings Capabilities provided by the item's enabled services. |
| user_capabilities | object Capabilities available to the requesting user for this item. |
| geometry_type | string Primary geometry type. |
| num_views | integer View count. |
| services | string <uri> URL to the services configured for this catalog item. See the Services documentation. |
[- {
- "id": "c3TRfmHwdwpc9QY",
- "type": "catalog-item",
- "kind": "external",
- "title": "Road Centerlines",
- "description": "string",
- "first_published_at": "2019-08-24T14:15:22Z",
- "published_at": "2019-08-24T14:15:22Z",
- "featured_at": "2019-08-24T14:15:22Z",
- "service_capabilities": [
- "string"
], - "user_capabilities": { },
- "geometry_type": "polygon",
- "num_views": 1024,
}
]| catalogitem_id required | string The catalog item public id. |
| title required | string Display title for the catalog item |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item subtype. Omit (or send an empty string) for the base catalog item; otherwise one of |
| description | string Markdown-formatted description |
| id | string Catalog item public ID (prefixed |
| url | string <uri> API detail URL for this catalog item. |
| type | string Always |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item kind, derived from the catalog item subtype. The base catalog item serializes as an empty string; subtypes serialize as |
| title | string Display title. |
| description | string Markdown-formatted description. |
| first_published_at | string <date-time> Timestamp the item was first published, if ever. |
| published_at | string <date-time> Timestamp of the published version, if any. |
| featured_at | string <date-time> Timestamp this item was featured, if any. |
| service_capabilities | Array of strings Capabilities provided by the item's enabled services. |
| user_capabilities | object Capabilities available to the requesting user for this item. |
| geometry_type | string Primary geometry type. |
| num_views | integer View count. |
| services | string <uri> URL to the services configured for this catalog item. See the Services documentation. |
| publisher | object The publishing user or group. |
| categories | Array of objects |
| tags | Array of strings |
| geotags | Array of objects |
| attachments | Array of objects Documents attached to this version. |
| settings | object Item settings/flags. |
| metadata | string <uri> URL to the XML metadata endpoints for this version. |
| version | object The version represented by this response. |
| this_version | string <uri> |
| published_version | string <uri> |
| latest_version | string <uri> |
| request_access | string <uri> URL to request access to this item. |
| data | object 3D Tiles items only; datasource configuration. |
| config | object External items only; external service configuration. |
{- "title": "string",
- "kind": "",
- "description": "string"
}{- "id": "c3TRfmHwdwpc9QY",
- "type": "catalog-item",
- "kind": "external",
- "title": "Road Centerlines",
- "description": "string",
- "first_published_at": "2019-08-24T14:15:22Z",
- "published_at": "2019-08-24T14:15:22Z",
- "featured_at": "2019-08-24T14:15:22Z",
- "service_capabilities": [
- "string"
], - "user_capabilities": { },
- "geometry_type": "polygon",
- "num_views": 1024,
- "publisher": { },
- "categories": [
- { }
], - "tags": [
- "string"
], - "geotags": [
- { }
], - "attachments": [
- { }
], - "settings": { },
- "version": { },
- "data": { },
- "config": { }
}| catalogitem_id required | string The catalog item public id. |
| id | string Catalog item public ID (prefixed |
| url | string <uri> API detail URL for this catalog item. |
| type | string Always |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item kind, derived from the catalog item subtype. The base catalog item serializes as an empty string; subtypes serialize as |
| title | string Display title. |
| description | string Markdown-formatted description. |
| first_published_at | string <date-time> Timestamp the item was first published, if ever. |
| published_at | string <date-time> Timestamp of the published version, if any. |
| featured_at | string <date-time> Timestamp this item was featured, if any. |
| service_capabilities | Array of strings Capabilities provided by the item's enabled services. |
| user_capabilities | object Capabilities available to the requesting user for this item. |
| geometry_type | string Primary geometry type. |
| num_views | integer View count. |
| services | string <uri> URL to the services configured for this catalog item. See the Services documentation. |
| publisher | object The publishing user or group. |
| categories | Array of objects |
| tags | Array of strings |
| geotags | Array of objects |
| attachments | Array of objects Documents attached to this version. |
| settings | object Item settings/flags. |
| metadata | string <uri> URL to the XML metadata endpoints for this version. |
| version | object The version represented by this response. |
| this_version | string <uri> |
| published_version | string <uri> |
| latest_version | string <uri> |
| request_access | string <uri> URL to request access to this item. |
| data | object 3D Tiles items only; datasource configuration. |
| config | object External items only; external service configuration. |
{- "id": "c3TRfmHwdwpc9QY",
- "type": "catalog-item",
- "kind": "external",
- "title": "Road Centerlines",
- "description": "string",
- "first_published_at": "2019-08-24T14:15:22Z",
- "published_at": "2019-08-24T14:15:22Z",
- "featured_at": "2019-08-24T14:15:22Z",
- "service_capabilities": [
- "string"
], - "user_capabilities": { },
- "geometry_type": "polygon",
- "num_views": 1024,
- "publisher": { },
- "categories": [
- { }
], - "tags": [
- "string"
], - "geotags": [
- { }
], - "attachments": [
- { }
], - "settings": { },
- "version": { },
- "data": { },
- "config": { }
}| catalogitem_id required | string The catalog item public id. |
| catalogitem_version_id required | string The catalog item version id. |
| id | string Catalog item public ID (prefixed |
| url | string <uri> API detail URL for this catalog item. |
| type | string Always |
| kind | string Enum: "" "external" "threedtiles" "smalldata" "misc" Item kind, derived from the catalog item subtype. The base catalog item serializes as an empty string; subtypes serialize as |
| title | string Display title. |
| description | string Markdown-formatted description. |
| first_published_at | string <date-time> Timestamp the item was first published, if ever. |
| published_at | string <date-time> Timestamp of the published version, if any. |
| featured_at | string <date-time> Timestamp this item was featured, if any. |
| service_capabilities | Array of strings Capabilities provided by the item's enabled services. |
| user_capabilities | object Capabilities available to the requesting user for this item. |
| geometry_type | string Primary geometry type. |
| num_views | integer View count. |
| services | string <uri> URL to the services configured for this catalog item. See the Services documentation. |
| publisher | object The publishing user or group. |
| categories | Array of objects |
| tags | Array of strings |
| geotags | Array of objects |
| attachments | Array of objects Documents attached to this version. |
| settings | object Item settings/flags. |
| metadata | string <uri> URL to the XML metadata endpoints for this version. |
| version | object The version represented by this response. |
| this_version | string <uri> |
| published_version | string <uri> |
| latest_version | string <uri> |
| request_access | string <uri> URL to request access to this item. |
| data | object 3D Tiles items only; datasource configuration. |
| config | object External items only; external service configuration. |
{- "id": "c3TRfmHwdwpc9QY",
- "type": "catalog-item",
- "kind": "external",
- "title": "Road Centerlines",
- "description": "string",
- "first_published_at": "2019-08-24T14:15:22Z",
- "published_at": "2019-08-24T14:15:22Z",
- "featured_at": "2019-08-24T14:15:22Z",
- "service_capabilities": [
- "string"
], - "user_capabilities": { },
- "geometry_type": "polygon",
- "num_views": 1024,
- "publisher": { },
- "categories": [
- { }
], - "tags": [
- "string"
], - "geotags": [
- { }
], - "attachments": [
- { }
], - "settings": { },
- "version": { },
- "data": { },
- "config": { }
}| catalogitem_id required | string The catalog item public id. |
| catalogitem_version_id required | string The catalog item version id. |
| document required | string <uri> URL of the Document resource to attach. |
{
}| catalogitem_id required | string The catalog item public id. |
| catalogitem_version_id required | string The catalog item version id. |
| document required | string <uri> URL of the Document resource to attach. |
{
}Returns a 307 redirect to the attachment file.
| catalogitem_id required | string The catalog item public id. |
| catalogitem_version_id required | string The catalog item version id. |
| document_id required | integer The attachment document id. |
data_type is one of iso, fgdc or dc.
| catalogitem_id required | string The catalog item public id. |
| catalogitem_version_id required | string The catalog item version id. |
| data_type required | string The metadata data type. |
data_type is one of iso, fgdc or dc.
| catalogitem_id required | string The catalog item public id. |
| catalogitem_version_id required | string The catalog item version id. |
| data_type required | string The metadata data type. |
See the Services documentation for permissions and enable/disable rules.
| catalogitem_id required | string The catalog item public id. |
| id | string The unique identifier for the service. |
| key | string Enum: "kart" "csw" "spatial-query-grid" "spatial-query-tiles" "spatial-query-vector" "spatial-query-set" "data-table" "wfs" "wfs-changesets" "tiles" "esri-map" "wmts" "vector-tile-pmtiles" "vector-tile-mvt" "vector-tile-mbtiles" "vector-tile-arcgis" "vector-tile-json" "raster-pmtile" "raster-tile-json" "copc" "esri-rest-api" "3d-tiles" "ifc" "kart-diff" "export" "small-data" "external" "kart-ui" "spatial-query-ui" "data-table-ui" "vector-tile-pmtiles-ui" "copc-ui" The service type key (for example |
| authority | string A reference to the authority that specifies the service, for example, "OGC" |
| short_name | string The short name for the service. |
| label | string Longer descripion of the service |
| auth_method | Array of strings Items Value: "apikey" Enumerates the valid authentication methods for this service, if available. |
| auth_scopes | Array of strings Enumerates the valid scopes for this service, if available for Koordinates APIs. |
| domain | string The domain of the service. |
| enabled | boolean Whether the service is enabled. Cannot be set to false for ad-hoc services, or for service types that do not enforce permissions. |
| advertised | boolean Whether the service is advertised to users. |
| permissions | string <url> URL to to the permissions management endpoints for this service. Can be expanded with the |
Array of objects (ServiceTemplateSerializer) >= 0 Lists the URLs for accessing this service, if applicable. | |
| capabilities | Array of strings Capabilities provided by this service. |
| user_capabilities | object Capabilities available to the requesting user for this service. |
| tilegrids | Array of objects WMTS only ( |
| styles | Array of objects WMTS only ( |
| kind | string Present only for external services. Value is |
| description | string Present only for external services. |
[- {
- "id": "string",
- "key": "wfs",
- "authority": "string",
- "short_name": "string",
- "label": "string",
- "auth_method": [
- "apikey"
], - "auth_scopes": [
- "string"
], - "domain": "string",
- "enabled": true,
- "advertised": true,
- "permissions": "string",
- "template_urls": [
- {
- "name": "string",
- "service_url": "string"
}
], - "capabilities": [
- "string"
], - "user_capabilities": { },
- "tilegrids": [
- { }
], - "styles": [
- { }
], - "kind": "external",
- "description": "string"
}
]| catalogitem_id required | string The catalog item public id. |
| service_id required | string The service id. |
| id | string The unique identifier for the service. |
| key | string Enum: "kart" "csw" "spatial-query-grid" "spatial-query-tiles" "spatial-query-vector" "spatial-query-set" "data-table" "wfs" "wfs-changesets" "tiles" "esri-map" "wmts" "vector-tile-pmtiles" "vector-tile-mvt" "vector-tile-mbtiles" "vector-tile-arcgis" "vector-tile-json" "raster-pmtile" "raster-tile-json" "copc" "esri-rest-api" "3d-tiles" "ifc" "kart-diff" "export" "small-data" "external" "kart-ui" "spatial-query-ui" "data-table-ui" "vector-tile-pmtiles-ui" "copc-ui" The service type key (for example |
| authority | string A reference to the authority that specifies the service, for example, "OGC" |
| short_name | string The short name for the service. |
| label | string Longer descripion of the service |
| auth_method | Array of strings Items Value: "apikey" Enumerates the valid authentication methods for this service, if available. |
| auth_scopes | Array of strings Enumerates the valid scopes for this service, if available for Koordinates APIs. |
| domain | string The domain of the service. |
| enabled | boolean Whether the service is enabled. Cannot be set to false for ad-hoc services, or for service types that do not enforce permissions. |
| advertised | boolean Whether the service is advertised to users. |
| permissions | string <url> URL to to the permissions management endpoints for this service. Can be expanded with the |
Array of objects (ServiceTemplateSerializer) >= 0 Lists the URLs for accessing this service, if applicable. | |
| capabilities | Array of strings Capabilities provided by this service. |
| user_capabilities | object Capabilities available to the requesting user for this service. |
| tilegrids | Array of objects WMTS only ( |
| styles | Array of objects WMTS only ( |
| kind | string Present only for external services. Value is |
| description | string Present only for external services. |
{- "id": "string",
- "key": "wfs",
- "authority": "string",
- "short_name": "string",
- "label": "string",
- "auth_method": [
- "apikey"
], - "auth_scopes": [
- "string"
], - "domain": "string",
- "enabled": true,
- "advertised": true,
- "permissions": "string",
- "template_urls": [
- {
- "name": "string",
- "service_url": "string"
}
], - "capabilities": [
- "string"
], - "user_capabilities": { },
- "tilegrids": [
- { }
], - "styles": [
- { }
], - "kind": "external",
- "description": "string"
}| catalogitem_id required | string The catalog item public id. |
| service_id required | string The service id. |
| enabled | boolean |
| id | string The unique identifier for the service. |
| key | string Enum: "kart" "csw" "spatial-query-grid" "spatial-query-tiles" "spatial-query-vector" "spatial-query-set" "data-table" "wfs" "wfs-changesets" "tiles" "esri-map" "wmts" "vector-tile-pmtiles" "vector-tile-mvt" "vector-tile-mbtiles" "vector-tile-arcgis" "vector-tile-json" "raster-pmtile" "raster-tile-json" "copc" "esri-rest-api" "3d-tiles" "ifc" "kart-diff" "export" "small-data" "external" "kart-ui" "spatial-query-ui" "data-table-ui" "vector-tile-pmtiles-ui" "copc-ui" The service type key (for example |
| authority | string A reference to the authority that specifies the service, for example, "OGC" |
| short_name | string The short name for the service. |
| label | string Longer descripion of the service |
| auth_method | Array of strings Items Value: "apikey" Enumerates the valid authentication methods for this service, if available. |
| auth_scopes | Array of strings Enumerates the valid scopes for this service, if available for Koordinates APIs. |
| domain | string The domain of the service. |
| enabled | boolean Whether the service is enabled. Cannot be set to false for ad-hoc services, or for service types that do not enforce permissions. |
| advertised | boolean Whether the service is advertised to users. |
| permissions | string <url> URL to to the permissions management endpoints for this service. Can be expanded with the |
Array of objects (ServiceTemplateSerializer) >= 0 Lists the URLs for accessing this service, if applicable. | |
| capabilities | Array of strings Capabilities provided by this service. |
| user_capabilities | object Capabilities available to the requesting user for this service. |
| tilegrids | Array of objects WMTS only ( |
| styles | Array of objects WMTS only ( |
| kind | string Present only for external services. Value is |
| description | string Present only for external services. |
{- "enabled": true
}{- "id": "string",
- "key": "wfs",
- "authority": "string",
- "short_name": "string",
- "label": "string",
- "auth_method": [
- "apikey"
], - "auth_scopes": [
- "string"
], - "domain": "string",
- "enabled": true,
- "advertised": true,
- "permissions": "string",
- "template_urls": [
- {
- "name": "string",
- "service_url": "string"
}
], - "capabilities": [
- "string"
], - "user_capabilities": { },
- "tilegrids": [
- { }
], - "styles": [
- { }
], - "kind": "external",
- "description": "string"
}The Services API allows you to configure which data services are enabled and who can access them. Each service is attached to an Owner — a layer, table, set (collection), or catalog item.
Each service has a stable key (used as the key field and as
service_id in service URLs). Services are attached to an Owner — a
layer, table, set (collection), or catalog item. Owner-type columns
indicate where each service can appear.
| Key | Name | What it does | Owners |
|---|---|---|---|
kart |
Kart Repository | Git-based version-controlled repository (Kart mirror) for a layer. | layer |
csw |
Catalog Service for the Web | OGC CSW endpoint for metadata discovery. | layer, set, catalog-item |
spatial-query-grid |
Raster Query API | Spatial query API for raster/grid data. | layer |
spatial-query-tiles |
Raster Tiles Query API | Spatial query over raster tile data (no user API access required). | layer |
spatial-query-vector |
Vector Query API | Latitude/longitude spatial queries over vector data. | layer |
spatial-query-set |
Set Query API | Spatial query across all layers in a set. | set |
data-table |
Data Table API | Tabular feature and raster-tile queries. | layer |
wfs |
OGC Web Feature Service | WFS for vector and table data retrieval. | layer |
wfs-changesets |
WFS Changesets | WFS for retrieving changesets from version-controlled layers. | layer |
tiles |
OGC Web Map Tile Service (WMTS) | Tiled map imagery via WMTS. Exposes tilegrids and styles. |
layer, set |
esri-map |
Esri Map Service | Map tiles in Esri format. May be unavailable depending on plan/site settings. | layer, set, catalog-item |
wmts |
OGC WMTS Map Service | Map tiles in OGC WMTS format. | layer, set, catalog-item |
vector-tile-pmtiles |
ProtoMaps Vector Tile (PMTiles) | Vector tiles in PMTiles format for efficient streaming. | layer |
vector-tile-mvt |
Mapbox Vector Tile (MVT) | Vector tiles in Mapbox MVT format. | layer |
vector-tile-mbtiles |
MBTiles Vector Tile | Vector tiles in MBTiles database format. | layer |
vector-tile-arcgis |
ArcGIS Vector Tile Service | Vector tiles for ArcGIS VectorTileServer. | layer |
vector-tile-json |
Vector Tile JSON | Vector tile metadata in TileJSON format. | layer, set, catalog-item |
raster-pmtile |
Raster ProtoMaps Tile (PMTiles) | Raster tiles in PMTiles format. | layer, set, catalog-item |
raster-tile-json |
Raster Tile JSON | Raster tile metadata in TileJSON format. | layer, set, catalog-item |
copc |
Cloud Optimized Point Cloud (COPC) | COPC format for LiDAR/point-cloud data. | layer |
esri-rest-api |
Esri REST Services | Esri-compatible REST query/retrieval API. | layer |
3d-tiles |
OGC 3D Tiles | Streamable 3D meshes/models (photogrammetry, buildings, point clouds). | layer |
ifc |
Industry Foundation Classes (IFC) | IFC open standard for building/construction data. | layer, set, catalog-item |
kart-diff |
Kart Diff | Differences between Kart commits. | layer, set, catalog-item |
export |
Export Service | Export layer data in various formats. | layer |
small-data |
Small Data File | Direct download of small data files. | catalog-item |
external |
External Service | User-defined external service attached to a viewer or dataset. Adds kind: "external" and a description field. |
layer, set, catalog-item, repo-dataset |
The following service types do not deliver data; they only control web-app
UI visibility and are internal, web-app visibility only:
kart-ui, spatial-query-ui, data-table-ui,
vector-tile-pmtiles-ui, copc-ui.
The services which can be enabled/disabled, and have their permissions edited inherit permissions from their owner as follows:
download permissions on a layer, by default they will have access to the following services:kartexportwfs and wfs-changesetsview permissions on a layer, by default they will have access to the following services:tilesdata-tablespatial-query-vector, spatial-query-tiles, and spatial-query-gridIf a service isn't listed above, it cannot be enabled/disabled or have its permissions edited via this API.
Services are owned by layers, tables, sets and catalog items. List them on the Service List endpoint for the relevant owner:
/services/api/{api_version}/layers/{layer_id}/services/
/services/api/{api_version}/sets/{set_id}/services/
/services/api/{api_version}/items/{catalogitem_id}/services/
See the Catalog Items documentation for catalog-item services.
Enable/disable the service with a PUT request {"enabled": true|false} to the Service Detail endpoint:
/services/api/{api_version}/layers/{layer_id}/services/{service_id}/
The Service Permissions view lists which users/groups have been granted access permissions over a Service:
/services/api/{api_version}/layers/{layer_id}/services/{service_id}/permissions/
By default, this endpoint will return an empty list, which means service permissions are inherited from their owner following the rules described above under Configurable Services.
But if groups/users are listed, they are the only roles who can use the service. The one exception are users who have admin
permissions over the Service Owner. They will still be able to access the service, even if they are not listed on the
Service Permissions view.
To update which groups/users have permissions over a service, supply them in a PUT request:
[{"group": 123, "permission": "access"}, {"group": 456, "permission": "access"}]
Any groups/users supplied here must also have the requisite permission on the owner per Configurable Services
to use the service. For example, you could give a group access to a WFS Service, but if they don't have
download permissions over its layer, they won't be able to utilise the service.
If you want to check whether a specific user or group has access over a service, do a GET request to the Check Permissions
endpoint:
/services/api/{api_version}/layers/{layer_id}/services/{service_id}/permissions/{user|group}.{user_id|group_id|group_alias}/access/
In addition to the built-in service types, you can expose layers and
tables through external (third-party) services hosted outside the
Koordinates platform. This is a two-step process: a site administrator
defines a reusable external service template, then external services
are attached to individual datasets from that template. The external
services feature must be enabled on your site by Koordinates; contact
support to request it (there is no API to enable it or to check whether it
is enabled). While it is disabled, the endpoints below return 404 Not Found; if you are authenticated but not a site administrator they return
403 Forbidden.
1. Create a template (site administration rights required):
POST /services/api/{api_version}/site/external-service-templates/
A template's template_urls field holds one to three entries, each with a
service_url (and an optional name). The scope field controls which
dataset types the template can be attached to. Within a service_url, the
tokens {id}, {shortname} and {title} are replaced, when a service is
attached, with the target dataset's ID, short name and title
respectively (these refer to the dataset being attached to — not the
template's own short_name field). Any other text — including tile
placeholders such as {z}/{x}/{y} — is left unchanged. For example:
{
"title": "Aerial Imagery Basemap",
"short_name": "aerial-basemap",
"description": "Aerial imagery basemap (WebMercatorQuad WebP tiles).",
"template_urls": [
{"name": "Aerial tiles", "service_url": "https://tiles.example.com/v1/aerial/WebMercatorQuad/{z}/{x}/{y}.webp?api=YOUR_API_KEY"}
],
"scope": ["all"],
"enabled": true,
"access_policy": "all-users"
}
The response includes the new template's id. List, update and delete
templates under the same path.
2. Attach external services to a layer or table (requires admin on
the dataset). Repeat this for each dataset you want to expose, passing the
id of the template from step 1:
POST /services/api/{api_version}/{layers|tables}/{layer_id}/external-services/
{"template_id": 42, "enabled": true}
The attached service is returned in the same form as built-in services
(its id, e.g. s3YPf…, is used in the detail URL below). Manage each
external service (enable/disable, delete) on its detail endpoint:
/services/api/{api_version}/{layers|tables}/{layer_id}/external-services/{service_id}/
Lists the external service templates defined for the site. Requires site administration rights, and the external services feature must be enabled on the site.
| id | integer |
| title | string Display title for the template. |
| short_name | string <= 25 characters Short name, usable in the |
| description | string |
Array of objects [ 1 .. 3 ] items The service URLs to expose. Within a | |
| scope | Array of strings non-empty Items Enum: "all" "layer" "vector" "raster" "grid" "table" Which dataset types the template can be attached to. List one or more of: |
| enabled | boolean Whether the template is enabled. This does not block attaching and does not change the state of services attached from it — a service's enabled state is set by the |
| access_policy | string Default: "all-users" Enum: "disabled" "all-users" "paid-seats" "paid-seats-and-third-party-auth" "koordinates-staff" Which users may consume services created from this template. Defaults to |
| suspended | boolean Whether the template is suspended. Suspended templates cannot be attached to new datasets. A template cannot be created suspended. |
| used_by | integer Number of external services currently using this template. |
| created_at | string <date-time> |
| updated_at | string <date-time> |
[- {
- "id": 0,
- "title": "string",
- "short_name": "string",
- "description": "string",
- "scope": [
- "all"
], - "enabled": true,
- "access_policy": "disabled",
- "suspended": true,
- "used_by": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}
]| title required | string |
| short_name required | string <= 25 characters |
| description | string |
required | Array of objects [ 1 .. 3 ] items |
| scope required | Array of strings non-empty Items Enum: "all" "layer" "vector" "raster" "grid" "table" Which dataset types the template can be attached to. List one or more of: |
| enabled | boolean Whether the template itself is enabled. |
| access_policy | string Enum: "disabled" "all-users" "paid-seats" "paid-seats-and-third-party-auth" "koordinates-staff" Which users may consume services created from this template. Defaults to |
| suspended | boolean |
| id | integer |
| title | string Display title for the template. |
| short_name | string <= 25 characters Short name, usable in the |
| description | string |
Array of objects [ 1 .. 3 ] items The service URLs to expose. Within a | |
| scope | Array of strings non-empty Items Enum: "all" "layer" "vector" "raster" "grid" "table" Which dataset types the template can be attached to. List one or more of: |
| enabled | boolean Whether the template is enabled. This does not block attaching and does not change the state of services attached from it — a service's enabled state is set by the |
| access_policy | string Default: "all-users" Enum: "disabled" "all-users" "paid-seats" "paid-seats-and-third-party-auth" "koordinates-staff" Which users may consume services created from this template. Defaults to |
| suspended | boolean Whether the template is suspended. Suspended templates cannot be attached to new datasets. A template cannot be created suspended. |
| used_by | integer Number of external services currently using this template. |
| created_at | string <date-time> |
| updated_at | string <date-time> |
{- "title": "string",
- "short_name": "string",
- "description": "string",
- "scope": [
- "all"
], - "enabled": true,
- "access_policy": "disabled",
- "suspended": true
}{- "id": 0,
- "title": "string",
- "short_name": "string",
- "description": "string",
- "scope": [
- "all"
], - "enabled": true,
- "access_policy": "disabled",
- "suspended": true,
- "used_by": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}| template_id required | integer The external service template ID |
| id | integer |
| title | string Display title for the template. |
| short_name | string <= 25 characters Short name, usable in the |
| description | string |
Array of objects [ 1 .. 3 ] items The service URLs to expose. Within a | |
| scope | Array of strings non-empty Items Enum: "all" "layer" "vector" "raster" "grid" "table" Which dataset types the template can be attached to. List one or more of: |
| enabled | boolean Whether the template is enabled. This does not block attaching and does not change the state of services attached from it — a service's enabled state is set by the |
| access_policy | string Default: "all-users" Enum: "disabled" "all-users" "paid-seats" "paid-seats-and-third-party-auth" "koordinates-staff" Which users may consume services created from this template. Defaults to |
| suspended | boolean Whether the template is suspended. Suspended templates cannot be attached to new datasets. A template cannot be created suspended. |
| used_by | integer Number of external services currently using this template. |
| created_at | string <date-time> |
| updated_at | string <date-time> |
{- "id": 0,
- "title": "string",
- "short_name": "string",
- "description": "string",
- "scope": [
- "all"
], - "enabled": true,
- "access_policy": "disabled",
- "suspended": true,
- "used_by": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}| template_id required | integer The external service template ID |
| title required | string |
| short_name required | string <= 25 characters |
| description | string |
required | Array of objects [ 1 .. 3 ] items |
| scope required | Array of strings non-empty Items Enum: "all" "layer" "vector" "raster" "grid" "table" Which dataset types the template can be attached to. List one or more of: |
| enabled | boolean Whether the template itself is enabled. |
| access_policy | string Enum: "disabled" "all-users" "paid-seats" "paid-seats-and-third-party-auth" "koordinates-staff" Which users may consume services created from this template. Defaults to |
| suspended | boolean |
| id | integer |
| title | string Display title for the template. |
| short_name | string <= 25 characters Short name, usable in the |
| description | string |
Array of objects [ 1 .. 3 ] items The service URLs to expose. Within a | |
| scope | Array of strings non-empty Items Enum: "all" "layer" "vector" "raster" "grid" "table" Which dataset types the template can be attached to. List one or more of: |
| enabled | boolean Whether the template is enabled. This does not block attaching and does not change the state of services attached from it — a service's enabled state is set by the |
| access_policy | string Default: "all-users" Enum: "disabled" "all-users" "paid-seats" "paid-seats-and-third-party-auth" "koordinates-staff" Which users may consume services created from this template. Defaults to |
| suspended | boolean Whether the template is suspended. Suspended templates cannot be attached to new datasets. A template cannot be created suspended. |
| used_by | integer Number of external services currently using this template. |
| created_at | string <date-time> |
| updated_at | string <date-time> |
{- "title": "string",
- "short_name": "string",
- "description": "string",
- "scope": [
- "all"
], - "enabled": true,
- "access_policy": "disabled",
- "suspended": true
}{- "id": 0,
- "title": "string",
- "short_name": "string",
- "description": "string",
- "scope": [
- "all"
], - "enabled": true,
- "access_policy": "disabled",
- "suspended": true,
- "used_by": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}Deletes the template. External services already created from it are unaffected. Returns the deleted template.
| template_id required | integer The external service template ID |
| id | integer |
| title | string Display title for the template. |
| short_name | string <= 25 characters Short name, usable in the |
| description | string |
Array of objects [ 1 .. 3 ] items The service URLs to expose. Within a | |
| scope | Array of strings non-empty Items Enum: "all" "layer" "vector" "raster" "grid" "table" Which dataset types the template can be attached to. List one or more of: |
| enabled | boolean Whether the template is enabled. This does not block attaching and does not change the state of services attached from it — a service's enabled state is set by the |
| access_policy | string Default: "all-users" Enum: "disabled" "all-users" "paid-seats" "paid-seats-and-third-party-auth" "koordinates-staff" Which users may consume services created from this template. Defaults to |
| suspended | boolean Whether the template is suspended. Suspended templates cannot be attached to new datasets. A template cannot be created suspended. |
| used_by | integer Number of external services currently using this template. |
| created_at | string <date-time> |
| updated_at | string <date-time> |
{- "id": 0,
- "title": "string",
- "short_name": "string",
- "description": "string",
- "scope": [
- "all"
], - "enabled": true,
- "access_policy": "disabled",
- "suspended": true,
- "used_by": 0,
- "created_at": "2019-08-24T14:15:22Z",
- "updated_at": "2019-08-24T14:15:22Z"
}Lists the data services configured for the owning layer, table, set or catalog item.
| layer_id required | integer The layer ID |
| id | string The unique identifier for the service. |
| key | string Enum: "kart" "csw" "spatial-query-grid" "spatial-query-tiles" "spatial-query-vector" "spatial-query-set" "data-table" "wfs" "wfs-changesets" "tiles" "esri-map" "wmts" "vector-tile-pmtiles" "vector-tile-mvt" "vector-tile-mbtiles" "vector-tile-arcgis" "vector-tile-json" "raster-pmtile" "raster-tile-json" "copc" "esri-rest-api" "3d-tiles" "ifc" "kart-diff" "export" "small-data" "external" "kart-ui" "spatial-query-ui" "data-table-ui" "vector-tile-pmtiles-ui" "copc-ui" The service type key (for example |
| authority | string A reference to the authority that specifies the service, for example, "OGC" |
| short_name | string The short name for the service. |
| label | string Longer descripion of the service |
| auth_method | Array of strings Items Value: "apikey" Enumerates the valid authentication methods for this service, if available. |
| auth_scopes | Array of strings Enumerates the valid scopes for this service, if available for Koordinates APIs. |
| domain | string The domain of the service. |
| enabled | boolean Whether the service is enabled. Cannot be set to false for ad-hoc services, or for service types that do not enforce permissions. |
| advertised | boolean Whether the service is advertised to users. |
| permissions | string <url> URL to to the permissions management endpoints for this service. Can be expanded with the |
Array of objects (ServiceTemplateSerializer) >= 0 Lists the URLs for accessing this service, if applicable. | |
| capabilities | Array of strings Capabilities provided by this service. |
| user_capabilities | object Capabilities available to the requesting user for this service. |
| tilegrids | Array of objects WMTS only ( |
| styles | Array of objects WMTS only ( |
| kind | string Present only for external services. Value is |
| description | string Present only for external services. |
[- {
- "id": "string",
- "key": "wfs",
- "authority": "string",
- "short_name": "string",
- "label": "string",
- "auth_method": [
- "apikey"
], - "auth_scopes": [
- "string"
], - "domain": "string",
- "enabled": true,
- "advertised": true,
- "permissions": "string",
- "template_urls": [
- {
- "name": "string",
- "service_url": "string"
}
], - "capabilities": [
- "string"
], - "user_capabilities": { },
- "tilegrids": [
- { }
], - "styles": [
- { }
], - "kind": "external",
- "description": "string"
}
]| layer_id required | integer The layer ID |
| service_id required | string The service ID |
| id | string The unique identifier for the service. |
| key | string Enum: "kart" "csw" "spatial-query-grid" "spatial-query-tiles" "spatial-query-vector" "spatial-query-set" "data-table" "wfs" "wfs-changesets" "tiles" "esri-map" "wmts" "vector-tile-pmtiles" "vector-tile-mvt" "vector-tile-mbtiles" "vector-tile-arcgis" "vector-tile-json" "raster-pmtile" "raster-tile-json" "copc" "esri-rest-api" "3d-tiles" "ifc" "kart-diff" "export" "small-data" "external" "kart-ui" "spatial-query-ui" "data-table-ui" "vector-tile-pmtiles-ui" "copc-ui" The service type key (for example |
| authority | string A reference to the authority that specifies the service, for example, "OGC" |
| short_name | string The short name for the service. |
| label | string Longer descripion of the service |
| auth_method | Array of strings Items Value: "apikey" Enumerates the valid authentication methods for this service, if available. |
| auth_scopes | Array of strings Enumerates the valid scopes for this service, if available for Koordinates APIs. |
| domain | string The domain of the service. |
| enabled | boolean Whether the service is enabled. Cannot be set to false for ad-hoc services, or for service types that do not enforce permissions. |
| advertised | boolean Whether the service is advertised to users. |
| permissions | string <url> URL to to the permissions management endpoints for this service. Can be expanded with the |
Array of objects (ServiceTemplateSerializer) >= 0 Lists the URLs for accessing this service, if applicable. | |
| capabilities | Array of strings Capabilities provided by this service. |
| user_capabilities | object Capabilities available to the requesting user for this service. |
| tilegrids | Array of objects WMTS only ( |
| styles | Array of objects WMTS only ( |
| kind | string Present only for external services. Value is |
| description | string Present only for external services. |
{- "id": "string",
- "key": "wfs",
- "authority": "string",
- "short_name": "string",
- "label": "string",
- "auth_method": [
- "apikey"
], - "auth_scopes": [
- "string"
], - "domain": "string",
- "enabled": true,
- "advertised": true,
- "permissions": "string",
- "template_urls": [
- {
- "name": "string",
- "service_url": "string"
}
], - "capabilities": [
- "string"
], - "user_capabilities": { },
- "tilegrids": [
- { }
], - "styles": [
- { }
], - "kind": "external",
- "description": "string"
}Enable or disable the service for its owner. Cannot disable ad-hoc services or service types that do not enforce permissions.
| layer_id required | integer The layer ID |
| service_id required | string The service ID |
| enabled | boolean |
{- "enabled": true
}| layer_id required | integer The layer ID |
| service_id required | string The service ID |
string or integer Either "everyone", "registered-users", or an integer representing a Group ID | |
| permission | string Value: "access" |
[- {
- "group": 999,
- "permission": "access"
}
]| layer_id required | integer The layer ID |
| service_id required | string The service ID |
| group | integer ID of the group to grant access to. Mutually exclusive with |
| user | integer ID of the user to grant access to. Mutually exclusive with |
| permission required | string Value: "access" |
{- "group": 0,
- "user": 0,
- "permission": "access"
}| layer_id required | integer The layer ID |
| service_id required | string The service ID |
| group | integer ID of the group to grant access to. Mutually exclusive with |
| user | integer ID of the user to grant access to. Mutually exclusive with |
| permission required | string Value: "access" |
[- {
- "group": 0,
- "user": 0,
- "permission": "access"
}
]| layer_id required | integer The layer ID |
| service_id required | string The service ID |
| owner_key required | string The owner key, e.g. |
string or integer Either "everyone", "registered-users", or an integer representing a Group ID | |
| permission | string Value: "access" |
{- "group": 999,
- "permission": "access"
}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/FK2SJ1J03Khttps://doi.org/10.5072/FK2SJ1J03Kdoi:10.5072/FK2SJ1J03KAny 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.
| layer_id required | integer The layer ID. |
| version_id required | string The version ID. |
| url | string <url> |
| identifier | string |
{- "identifier": "doi:10.10000/ABC1-DEF9"
}| layer_id required | integer The layer ID. |
| version_id required | string The version ID. |
| url | string <url> |
| identifier | string |
"doi:10.10000/ABC1-DEF9"{- "identifier": "doi:10.10000/ABC1-DEF9"
}| document_id required | integer The document ID. |
| version_id required | string The version ID. |
| url | string <url> |
| identifier | string |
{- "identifier": "doi:10.10000/ABC1-DEF9"
}| document_id required | integer The document ID. |
| version_id required | string The version ID. |
| url | string <url> |
| identifier | string |
"doi:10.10000/ABC1-DEF9"{- "identifier": "doi:10.10000/ABC1-DEF9"
}Returns a list of all users in the site.
| security | string Enum: "mfa" "remote_auth" "verified" Filter by account security type. |
string or integer Filter by group / site administrators | |
| seat_type | string Enum: "paid" "none" Filter by seat type |
| id | integer |
| url | string <url> |
| first_name | string |
| last_name | string |
| country | string |
| geotag | string |
string | |
| is_locked | boolean |
| is_site_admin | boolean |
| seat_type | string Enum: "none" "paid" |
| date_joined | string |
| is_verified | boolean
|
| is_remote_auth | boolean
|
| is_mfa_enabled | boolean
|
[- {
- "id": 482,
- "first_name": "Jennifer",
- "last_name": "Exampleton",
- "country": "US",
- "geotag": "global/oceania/new-zealand",
- "email": "jennifer.exampleton@example.com",
- "is_locked": false,
- "is_site_admin": false,
- "seat_type": "none",
- "date_joined": "2020-05-16T23:37:45.632286Z",
- "is_verified": true,
- "is_remote_auth": false,
- "is_mfa_enabled": false
}
]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 |
| type | string Enum: "normal" "default" "members" |
| access_requests_enabled | boolean |
[- {
- "id": 0,
- "url": "string",
- "name": "string",
- "country": "string",
- "org": "string",
- "type": "normal",
- "access_requests_enabled": true
}
]| group_id required | integer The group ID |
| id | number |
| url | string <url> |
| name | string |
| country | string |
| org | string |
| type | string Enum: "normal" "default" "members" |
| access_requests_enabled | boolean |
{- "id": 0,
- "url": "string",
- "name": "string",
- "country": "string",
- "org": "string",
- "type": "normal",
- "access_requests_enabled": true
}Returns a list of permissions granted to users within this group.
| group_id required | integer The group ID |
| security | string Enum: "mfa" "remote_auth" "verified" Filter by account security type. |
| 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": 482,
- "first_name": "Jennifer",
- "last_name": "Exampleton",
- "country": "US",
- "geotag": "global/oceania/new-zealand",
- "email": "jennifer.exampleton@example.com",
- "is_locked": false,
- "is_site_admin": false,
- "seat_type": "none",
- "date_joined": "2020-05-16T23:37:45.632286Z",
- "is_verified": true,
- "is_remote_auth": false,
- "is_mfa_enabled": false
}, - "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.
| group_id required | integer The group ID |
| action | string Enum: "create" "update" "delete" |
object | |
| url | string Required for |
[- {
- "action": "update",
- "value": {
- "permission": "view",
- "user": 99999
},
}
]| group_id required | integer The group ID |
| permission | string Enum: "view" "manage_data" "admin" |
| user | number |
{- "permission": "view",
- "user": 99999
}| group_id required | integer The group ID |
| user_id required | integer The user ID |
| 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": 482,
- "first_name": "Jennifer",
- "last_name": "Exampleton",
- "country": "US",
- "geotag": "global/oceania/new-zealand",
- "email": "jennifer.exampleton@example.com",
- "is_locked": false,
- "is_site_admin": false,
- "seat_type": "none",
- "date_joined": "2020-05-16T23:37:45.632286Z",
- "is_verified": true,
- "is_remote_auth": false,
- "is_mfa_enabled": false
}, - "permission": "view",
}| group_id required | integer The group ID |
| user_id required | integer The user ID |
| 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": 482,
- "first_name": "Jennifer",
- "last_name": "Exampleton",
- "country": "US",
- "geotag": "global/oceania/new-zealand",
- "email": "jennifer.exampleton@example.com",
- "is_locked": false,
- "is_site_admin": false,
- "seat_type": "none",
- "date_joined": "2020-05-16T23:37:45.632286Z",
- "is_verified": true,
- "is_remote_auth": false,
- "is_mfa_enabled": false
}, - "permission": "view",
}Fetches an existing access request to the group for the currently authenticated user.
| group_id required | integer The group ID |
| id | number |
| url | string <url> |
| created_at | string |
{- "id": 5,
- "created_at": "2020-05-16T23:37:45.632286Z"
}Submit an access request to the group for the currently authenticated user.
| group_id required | integer The group ID |
{- "id": 5,
- "created_at": "2020-05-16T23:37:45.632286Z"
}Fetches all outstanding access requests for the group.
| group_id required | integer The group ID |
| security | string Enum: "mfa" "remote_auth" "verified" "-mfa" "-remote_auth" "-verified" Filter by account security type. |
| id | number |
| url | string <url> |
| created_at | string |
object (RelatedUserSerializer) |
[- {
- "id": 5,
- "created_at": "2020-05-16T23:37:45.632286Z",
- "user": {
- "id": 482,
- "first_name": "Jennifer",
- "last_name": "Exampleton",
- "country": "US",
- "geotag": "global/oceania/new-zealand",
- "email": "jennifer.exampleton@example.com",
- "is_locked": false,
- "is_site_admin": false,
- "seat_type": "none",
- "date_joined": "2020-05-16T23:37:45.632286Z",
- "is_verified": true,
- "is_remote_auth": false,
- "is_mfa_enabled": false
}
}
]Fetches an access requests for the group.
| group_id required | integer The group ID |
| request_id required | integer The access request ID |
| id | number |
| url | string <url> |
| created_at | string |
object (RelatedUserSerializer) |
{- "id": 5,
- "created_at": "2020-05-16T23:37:45.632286Z",
- "user": {
- "id": 482,
- "first_name": "Jennifer",
- "last_name": "Exampleton",
- "country": "US",
- "geotag": "global/oceania/new-zealand",
- "email": "jennifer.exampleton@example.com",
- "is_locked": false,
- "is_site_admin": false,
- "seat_type": "none",
- "date_joined": "2020-05-16T23:37:45.632286Z",
- "is_verified": true,
- "is_remote_auth": false,
- "is_mfa_enabled": false
}
}Declines a users request to access the group. This will notify the requesting user that the request has been declined.
| group_id required | integer The group ID |
| request_id required | integer The access request ID |
| 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 |
| 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"
}{- "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
}
}| id required | integer The numeric ID of the license. |
| 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.
| id required | integer The numeric ID of the license. |
| 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 | string |
| slug | string |
| key | string |
| url | string <uri> |
| parent | string or null <uri> URL of the parent category, or null for a top-level category. |
{- "name": "Category 1",
- "slug": "string",
- "parent": "string"
}{- "name": "Category 3",
- "slug": "category-3",
- "key": "category-1/category-2/category-3",
}| category_url required | string The slash-separated key/slug path of the category (e.g. "parent-slug/child-slug"). Slashes are literal path separators — pass the path as-is; do not URL-encode them. |
| 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": [
- { }
]
}| category_url required | string The slash-separated key/slug path of the category (e.g. "parent-slug/child-slug"). Slashes are literal path separators — pass the path as-is; do not URL-encode them. |
| 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": [
- { }
]
}