123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271 |
- ---
- swagger: '2.0'
- info:
- version: 1.0.0
- title: GeoServer Workspace
- description: A workspace is a grouping of data stores. Similar to a namespace, it is used to group data that is related in some way.
- contact:
- name: GeoServer
- email: 'geoserver-users@osgeo.org'
- url: 'https://geoserver.org/comm/'
- host: localhost:8080
- basePath: /geoserver/rest
- paths:
- /workspaces:
- get:
- operationId: getWorkspaces
- tags:
- - "Workspaces"
- summary: Get a list of workspaces
- description: Displays a list of all workspaces on the server. Use the "Accept:" header to specify format or append an extension to the endpoint (example "/workspaces.xml" for XML)
- produces:
- - text/html
- - application/json
- - application/xml
- responses:
- 200:
- description: OK
- schema:
- $ref: "#/definitions/WorkspacesResponse"
- examples:
- application/xml: |
- <workspaces>
- <workspace>
- <name>topp</name>
- <atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="alternate" href="http://localhost:8080/geoserver/rest/workspaces/topp.xml" type="application/xml"/>
- </workspace>
- <workspace>
- <name>it.geosolutions</name>
- <atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="alternate" href="http://localhost:8080/geoserver/rest/workspaces/it.geosolutions.xml" type="application/xml"/>
- </workspace>
- </workspaces>
- application/json: |
- {
- "workspaces": {
- "workspace": [
- {
- "name": "topp",
- "href": "http://localhost:8080/geoserver/rest/workspaces/topp.json"
- },
- {
- "name": "it.geosolutions",
- "href": "http://localhost:8080/geoserver/rest/workspaces/it.geosolutions.json"
- }
- ]
- }
- }
- 401:
- description: Unauthorized
-
- post:
- operationId: postWorkspaces
- tags:
- - "Workspaces"
- summary: add a new workspace to GeoServer
- description: Adds a new workspace to the server
- parameters:
- - name: workspaceBody
- description: The layer group body information to upload.
- in: body
- required: true
- schema:
- $ref: "#/definitions/Workspace"
- - name: default
- in: query
- description: New workspace will be the used as the default. Allowed values are true or false, The default value is false.
- required: false
- type: boolean
- default: false
- consumes:
- - application/json
- - application/xml
- produces:
- - text/html
- - application/json
- - application/xml
- responses:
- 201:
- description: Created
- schema:
- type: string
- headers:
- Location:
- description: URL where the newly created workspace can be found
- type: string
- 409:
- description: Unable to add workspace as it already exists
-
- put:
- operationId: putWorkspaces
- tags:
- - "Workspaces"
- responses:
- 405:
- description: Not permitted
-
- delete:
- operationId: deleteWorkspaces
- tags:
- - "Workspaces"
- responses:
- 405:
- description: Not permitted
-
- /workspaces/{workspaceName}:
- get:
- operationId: getWorkspace
- tags:
- - "Workspaces"
- summary: Retrieve a layer group
- description: Retrieves a single workspace definition. Use the "Accept:" header to specify format or
- append an extension to the endpoint (example "/workspaces/{workspace}.xml" for XML).
- produces:
- - application/xml
- - application/json
- - text/html
- parameters:
- - name: workspaceName
- description: the name of the workspace to fetch
- in: path
- required: true
- type: string
- - name: quietOnNotFound
- in: query
- required: false
- description: The quietOnNotFound parameter avoids logging an exception when the workspace is not present. Note that 404 status code will still be returned.
- type: boolean
- responses:
- 200:
- description: OK
- schema:
- $ref: "#/definitions/WorkspaceResponse"
- examples:
- application/xml: |
- <workspace>
- <name>topp</name>
- <dataStores>
- <atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="alternate" href="http://localhost:8080/geoserver/rest/workspaces/topp/datastores.xml" type="application/xml"/>
- </dataStores>
- <coverageStores>
- <atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="alternate" href="http://localhost:8080/geoserver/rest/workspaces/topp/coveragestores.xml" type="application/xml"/>
- </coverageStores>
- <wmsStores>
- <atom:link xmlns:atom="http://www.w3.org/2005/Atom" rel="alternate" href="http://localhost:8080/geoserver/rest/workspaces/topp/wmsstores.xml" type="application/xml"/>
- </wmsStores>
- </workspace>
- application/json: |
- {
- "workspace": {
- "name": "topp",
- "dataStores": "http://localhost:8080/geoserver/rest/workspaces/topp/datastores.json",
- "coverageStores": "http://localhost:8080/geoserver/rest/workspaces/topp/coveragestores.json",
- "wmsStores": "http://localhost:8080/geoserver/rest/workspaces/topp/wmsstores.json"
- }
- }
- 404:
- description: workspace does not exist
- put:
- summary: Update a workspace
- tags:
- - "Workspaces"
- description: takes the body of the post and modifies the workspace from it.
- operationId: putWorkspace
- consumes:
- - application/json
- - application/xml
- responses:
- 200:
- description: Modified
- 405:
- description: Forbidden to change the name of the workspace
- 404:
- description: Workspace not found
- parameters:
- - name: workspaceName
- in: path
- description: name of workspace
- required: true
- type: string
- - name: workspaceBody
- description: The layer group body information to upload.
- in: body
- required: true
- schema:
- $ref: "#/definitions/Workspace"
- post:
- operationId: postWorkspace
- tags:
- - "Workspaces"
- responses:
- 405:
- description: Forbidden to post to an existing workspace (use PUT)
-
- delete:
- operationId: deleteWorkspace
- tags:
- - "Workspaces"
- parameters:
- - name: workspaceName
- in: path
- description: name of workspace
- required: true
- type: string
- - name: recurse
- in: query
- description: delete workspace contents (default false)
- required: false
- type: boolean
-
- responses:
- 200:
- description: Success workspace deleted
- 404:
- description: Workspace doesn't exist
- 403:
- description: Workspace or related Namespace is not empty (and recurse not true)
-
- definitions:
- Workspace:
- title: Workspace
- xml:
- name: workspace
- type: object
- required:
- - workspace
- properties:
- workspace:
- type: object
- required:
- - name
- properties:
- name:
- type: string
- description: name of the workspace
-
- WorkspacesResponse:
- title: Workspaces
- type: object
- properties:
- workspaces:
- $ref: "#/definitions/WorkspaceResponse"
- WorkspaceResponse:
- title: Workspace Response
- type: object
- properties:
- name:
- type: string
- description: Name of workspace
- dataStores:
- type: string
- description: URL to Datas tores in this workspace
- coverageStores:
- type: string
- description: URL to Coverage stores in this workspace
- wmsStores:
- type: string
- description: URL to WMS stores in this workspace
-
|