Skip to content

Commit

Permalink
Remove user collections
Browse files Browse the repository at this point in the history
  • Loading branch information
m-mohr committed Dec 8, 2023
1 parent 9eb872e commit 98a0633
Show file tree
Hide file tree
Showing 3 changed files with 6 additions and 122 deletions.
7 changes: 2 additions & 5 deletions extensions/workspaces/README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,6 @@
# Workspaces Extension

The Workspace Extension to the openEO API provides an interface for connecting external file storage such as cloud buckets to openEO back-end implementations.

This opens the possibility to register such a file storage system as a data source for new collections, so-called "User Collections".
Additionally, batch job results can be stored on such file storage systems.
The Workspace Extension to the openEO API provides an interface for connecting external file storage such as cloud buckets to openEO back-end implementations. This allows for example to store batch job results on such file storage systems.

- Version: **0.1.0**
- Stability: **experimental**
Expand All @@ -13,4 +10,4 @@ Additionally, batch job results can be stored on such file storage systems.
**Note:** This document only documents the additions to the specification.
Extensions can not change or break existing behavior of the openEO API.

The Workspace API is inspired by the [EOEPCA Workspace API](https://github.com/EOEPCA/rm-workspace-api) with regards to workspace management. The User Collections are not aligned with EOEPCA.
The Workspace API is inspired by the [EOEPCA Workspace API](https://github.com/EOEPCA/rm-workspace-api) with regards to workspace management.
119 changes: 3 additions & 116 deletions extensions/workspaces/openapi.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,9 @@ info:
title: openEO API - Workspaces Extension
version: 0.1.0
description: |-
The Workspace Extension to the openEO API provides an interface for connecting external file storage such as cloud buckets to openEO back-end implementations.
The Workspace Extension to the openEO API provides an interface for connecting external file storage such as cloud buckets to openEO back-end implementations. This allows for example to store batch job results on such file storage systems.
This opens the possibility to register such a file storage system as a data source for new collections, so-called "User Collections".
Additionally, batch job results can be stored on such file storage systems.
The Workspace API is inspired by the [EOEPCA Workspace API](https://github.com/EOEPCA/rm-workspace-api) with regards to workspace management. The User Collections are not aligned with EOEPCA.
The Workspace API is inspired by the [EOEPCA Workspace API](https://github.com/EOEPCA/rm-workspace-api) with regards to workspace management.
contact:
name: openEO Consortium
url: 'https://openeo.org'
Expand All @@ -21,8 +18,6 @@ externalDocs:
tags:
- name: Workspaces
description: Management of User Workspaces
- name: User Collections
description: Management of User Collections
servers:
- url: 'https://openeo.example/api/{version}'
description: >-
Expand Down Expand Up @@ -221,114 +216,6 @@ paths:
$ref: '../../openapi.yaml#/components/responses/client_error_auth'
5XX:
$ref: '../../openapi.yaml#/components/responses/server_error'
/collections:
post:
summary: Create a new User Collection
operationId: create-collection
description: |-
Registers a new collection.
The data must be available in the workspace provided via the query parameter. The data must be a STAC catalog in the given https://github.com/Open-EO/openeo-api/blob/draft/extensions/workspaces/README.md
The default entry point is a `catalog.json` or `collection.json` in the "root folder". The entry point can be customized by providing a relative link with the relation type `entrypoint` in the STAC metadata.
The collection metadata is provided via the request body. If no `id` is specified, the back-end assigns an ID.
tags:
- User Collections
- Workspaces
security:
- Bearer: []
parameters:
- name: workspace
in: query
required: true
description: The ID of the workspace where the data for the collection is located.
schema:
$ref: '#/components/schemas/workspace_id'
requestBody:
required: true
description: |-
The metadata to use for the specified User Collection.
**TODO:** The schema describes a generic collection. Required fields don't apply.
content:
application/json:
schema:
$ref: '../../openapi.yaml#/components/schemas/collection'
responses:
'201':
description: The collection has been created successfully.
headers:
Location:
required: true
schema:
description: |-
Absolute URL to the newly created collection.
The URL points to the metadata endpoint
`GET /collections/{collection_id}` with the `{collection_id}` being the
id of the created collection.
format: uri
type: string
example: 'https://openeo.example/api/v1/collections/my-collection'
OpenEO-Identifier:
required: true
schema:
$ref: '../../openapi.yaml#/components/schemas/collection_id'
4XX:
$ref: '../../openapi.yaml#/components/responses/client_error_auth'
5XX:
$ref: '../../openapi.yaml#/components/responses/server_error'
/collections/{collection_id}:
parameters:
- $ref: '../../openapi.yaml#/components/parameters/collection_id'
patch:
summary: Modify a User Collection
operationId: update-collection
description: |-
Modifies an existing User Collection at the back-end,
but maintains the identifier and associated workspace. Changes can be grouped in a single request.
User have to create a new collection to change the associated workspace or the collection identifier.
tags:
- User Collections
security:
- Bearer: []
responses:
'204':
description: Changes to the User Collection were applied successfully.
4XX:
$ref: '../../openapi.yaml#/components/responses/client_error_auth'
5XX:
$ref: '../../openapi.yaml#/components/responses/server_error'
requestBody:
required: true
description: |-
The metadata to change for the specified User Collection.
**TODO:** The schema describes a generic collection. Required fields don't apply. The `id` can't be updated.
content:
application/json:
schema:
$ref: '../../openapi.yaml#/components/schemas/collection_id'
delete:
summary: Delete a User Collection
operationId: delete-collection
description: |-
Deletes the User Collection.
Does NOT delete jobs or services that reference this User Collection. Also, does NOT remove any data from the workspace or the workspace itself.
tags:
- User Collections
security:
- Bearer: []
responses:
'204':
description: The User Collection has been successfully deleted
4XX:
$ref: '../../openapi.yaml#/components/responses/client_error_auth'
5XX:
$ref: '../../openapi.yaml#/components/responses/server_error'
components:
parameters:
workspace_id:
Expand All @@ -342,7 +229,7 @@ components:
workspace_id:
type: string
pattern: '^[\w\-\.~]+$'
example: my-collection
example: my-workspace
workspace_title:
type: string
description: A short title for the workspace.
Expand Down
2 changes: 1 addition & 1 deletion extensions/workspaces/package.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"name": "@openeo/api-extension-commercial-data",
"name": "@openeo/api-extension-workspaces",
"version": "0.1.0",
"author": "openEO Consortium",
"license": "Apache-2.0",
Expand Down

0 comments on commit 98a0633

Please sign in to comment.