You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGELOG.md
+2-1Lines changed: 2 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,6 +23,7 @@
23
23
-[#1126](https://github.com/LayerManager/layman/issues/1126) Endpoint [Workspace Map](https://github.com/LayerManager/layman/blob/v2.1.0/doc/rest.md#workspace-map) (with methods GET, PATCH, DELETE) was removed and replaced with endpoint [Map](doc/rest.md#map) (with methods GET, PATCH, DELETE) to use UUID-based URL `/rest/maps/{uuid}` instead of workspace&name-based URL.
24
24
-[#1126](https://github.com/LayerManager/layman/issues/1126) Endpoint [Workspace Layer](https://github.com/LayerManager/layman/blob/v2.1.0/doc/rest.md#workspace-layer) (with methods GET, PATCH, DELETE) was removed and replaced with endpoint [Layer](doc/rest.md#layer) (with methods GET, PATCH, DELETE) to use UUID-based URL `/rest/layers/{uuid}` instead of workspace&name-based URL.
25
25
-[#1126](https://github.com/LayerManager/layman/issues/1126) Endpoint [Workspace Layers](https://github.com/LayerManager/layman/blob/v2.1.0/doc/rest.md#workspace-layers) (with methods GET, POST, DELETE) was unified into endpoint [Layers](doc/rest.md#get-layers); `workspace` is now supplied via request query/body parameter instead of URL path.
26
+
-[#1126](https://github.com/LayerManager/layman/issues/1126) Endpoint [Workspace Layer Chunk](https://github.com/LayerManager/layman/blob/v2.1.0/doc/rest.md#workspace-layer-chunk) (with methods GET, POST) was removed and replaced with endpoint [Layer Chunk](doc/rest.md#layer-chunk) to use UUID-based URL `/rest/layers/{uuid}/chunk` instead of workspace&name-based URL.
26
27
27
28
## v2.1.0
28
29
2025-05-02
@@ -185,7 +186,7 @@
185
186
- [#165](https://github.com/LayerManager/layman/issues/165) POST Workspace [Layers](https://github.com/LayerManager/layman/blob/v2.1.0/doc/rest.md#post-workspace-layers)/[Maps](doc/rest.md#post-workspace-maps) and PATCH Workspace [Layer](https://github.com/LayerManager/layman/blob/v2.1.0/doc/rest.md#patch-workspace-layer)/[Map](https://github.com/LayerManager/layman/blob/v2.1.0/doc/rest.md#patch-workspace-map) saves [role names](doc/models.md#role) mentioned in `access_rights.read` and `access_rights.write` parameters into [prime DB schema](doc/data-storage.md#postgresql).
186
187
- [#165](https://github.com/LayerManager/layman/issues/165) Many requests respect roles in access rights:
Copy file name to clipboardExpand all lines: doc/rest.md
+9-9Lines changed: 9 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@
8
8
|[Layer](models.md#layer)|`/rest/layers/<uuid>`|[GET](#get-layer)| x |[PATCH](#patch-layer)|[DELETE](#delete-layer)|
9
9
|Layer Thumbnail|`/rest/layers/<uuid>/thumbnail`|[GET](#get-layer-thumbnail)| x | x | x |
10
10
|Layer Style|`/rest/layers/<uuid>/style`|[GET](#get-layer-style)| x | x | x |
11
-
|Workspace Layer Chunk|`/rest/workspaces/<workspace_name>/layers/<layername>/chunk`|[GET](#get-workspace-layer-chunk)|[POST](#post-workspace-layer-chunk)| x | x |
11
+
|Layer Chunk|`/rest/layers/<uuid>/chunk`|[GET](#get-layer-chunk)|[POST](#post-layer-chunk)| x | x |
12
12
|Workspace Layer Metadata Comparison|`/rest/workspaces/<workspace_name>/layers/<layername>/metadata-comparison`|[GET](#get-workspace-layer-metadata-comparison)| x | x | x |
13
13
|Maps|`/rest/maps`|[GET](#get-maps)| x | x | x |
14
14
|[Map](models.md#map)|`/rest/maps/<uuid>`|[GET](#get-map)| x |[PATCH](#patch-map)|[DELETE](#delete-map)|
@@ -122,7 +122,7 @@ Response to this request may be returned sooner than the processing chain is fin
122
122
It is possible to upload data files asynchronously, which is suitable for large files. This can be done in three steps:
123
123
1. Send POST Layers request with **file** parameter filled by file names that you want to upload
124
124
2. Read set of files accepted to upload from POST Layers response, **files_to_upload** property. The set of accepted files will be either equal to or subset of file names sent in **file** parameter.
125
-
3. Send [POST Workspace Layer Chunk](#post-workspace-layer-chunk) requests using Resumable.js to upload files.
125
+
3. Send [POST Layer Chunk](#post-layer-chunk) requests using Resumable.js to upload files.
- it is allowed to publish time-series layer by setting time_regex parameter and sending one or more main raster files (compressed in one archive or uncompressed) with the same extension, color interpretation, pixel size, nodata value, mask flags, and data type name. Filename can be at most 210 characters long. Supported characters are 26 Latin letters `a-zA-Z` (with or without diacritics), numbers, underscores, dashes, dots, and spaces. Other Latin characters (e.g. ligatures `ß` or `Æ`) and other than Latin scripts (e.g. Cyrillic or Chinese) are not supported. Files are stored and published with slugified filenames (diacritic is removed from letters, and space `` is converted to underscore `_`).
151
-
- if file names are provided, files must be uploaded subsequently using [POST Workspace Layer Chunk](#post-workspace-layer-chunk)
151
+
- if file names are provided, files must be uploaded subsequently using [POST Layer Chunk](#post-layer-chunk)
152
152
- in case of raster data input, following input combinations of bands and color interpretations are supported:
153
153
- 1 band: Gray
154
154
- 1 band: Palette
@@ -230,7 +230,7 @@ JSON array of objects representing posted layers with following structure:
230
230
-**name**: String. Name of the layer.
231
231
-**uuid**: String. UUID of the layer.
232
232
-**url**: String. URL of the layer. It points to [GET Layer](#get-layer).
233
-
-*files_to_upload*: List of objects. It's present only if **file** parameter contained file names. Each object represents one file that server expects to be subsequently uploaded using [POST Workspace Layer Chunk](#post-workspace-layer-chunk). Each object has following properties:
233
+
-*files_to_upload*: List of objects. It's present only if **file** parameter contained file names. Each object represents one file that server expects to be subsequently uploaded using [POST Layer Chunk](#post-layer-chunk). Each object has following properties:
234
234
-**file**: name of the file, equal to one of file name from **file** parameter
235
235
-**layman_original_parameter**: name of the request parameter that contained the file name; currently, the only possible value is `file`
236
236
@@ -366,7 +366,7 @@ Body parameters:
366
366
- If provided, current data file will be deleted and replaced by this file. GeoServer feature types, DB table, normalized raster file, and thumbnail will be deleted and created again using the new file.
367
367
- same file types as in [POST Layers](#post-layers) are expected
368
368
- only one of `file` or `external_table_uri` can be set
369
-
- if file names are provided, files must be uploaded subsequently using [POST Workspace Layer Chunk](#post-workspace-layer-chunk)
369
+
- if file names are provided, files must be uploaded subsequently using [POST Layer Chunk](#post-layer-chunk)
370
370
- if published file has empty bounding box (i.e. no features), its bounding box on WMS/WFS endpoint is set to the whole World
371
371
- if QML style is used (either directly within this request, or indirectly from previous state on server), it must list all attributes contained in given data file
372
372
- it is allowed to publish time-series layer - see [POST Layers](#post-layers)
@@ -461,7 +461,7 @@ Content-Type:
461
461
-`application/x-qgis-layer-settings` for QML
462
462
463
463
464
-
## Workspace Layer Chunk
464
+
## Layer Chunk
465
465
Layer Chunk endpoint enables to upload layer data files asynchronously by splitting them into small parts called *chunks* that are uploaded independently. The endpoint is expected to be operated using [Resumable.js](https://github.com/23/resumable.js/) library. Resumable.js can split and upload files by chunks using [HTML File API](https://developer.mozilla.org/en-US/docs/Web/API/File), widely supported by major browsers.
0 commit comments