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
Add parent ids list to collections, delete collection for collections belonging to catalogs (#554)
**Related Issue(s):**
- #308
- #520
-
Healy-Hyperspatial/stac-api-extensions-catalogs-endpoint#3
**Description:**
- Added DELETE `/catalogs/{catalog_id}/collections/{collection_id}`
endpoint to support removing collections from catalogs. When a
collection belongs to multiple catalogs, it removes only the specified
catalog from the collection's parent_ids. When a collection belongs to
only one catalog, the collection is deleted entirely.
- Added `parent_ids` internal field to collections to support
multi-catalog hierarchies. Collections can now belong to multiple
catalogs, with parent catalog IDs stored in this field for efficient
querying and management.
**PR Checklist:**
- [x] Code is formatted and linted (run `pre-commit run --all-files`)
- [x] Tests pass (run `make test`)
- [x] Documentation has been updated to reflect changes, if applicable
- [x] Changes are added to the changelog
Copy file name to clipboardExpand all lines: CHANGELOG.md
+3-1Lines changed: 3 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -9,7 +9,9 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
9
9
10
10
### Added
11
11
12
-
- Added catalogs route support to enable federated hierarchical catalog browsing and navigation in the STAC API. [#547](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/547)
12
+
- Added optional `/catalogs` route support to enable federated hierarchical catalog browsing and navigation. [#547](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/547)
13
+
- Added DELETE `/catalogs/{catalog_id}/collections/{collection_id}` endpoint to support removing collections from catalogs. When a collection belongs to multiple catalogs, it removes only the specified catalog from the collection's parent_ids. When a collection belongs to only one catalog, the collection is deleted entirely. [#554](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/554)
14
+
- Added `parent_ids` internal field to collections to support multi-catalog hierarchies. Collections can now belong to multiple catalogs, with parent catalog IDs stored in this field for efficient querying and management. [#554](https://github.com/stac-utils/stac-fastapi-elasticsearch-opensearch/pull/554)
@@ -28,6 +28,7 @@ The following organizations have contributed time and/or funding to support the
28
28
29
29
## Latest News
30
30
31
+
-**12/09/2025:****Feature Merge: Federated Catalogs.** The [`Catalogs Endpoint`](https://github.com/Healy-Hyperspatial/stac-api-extensions-catalogs-endpoint) extension is now in main! This enables a registry of catalogs and supports **poly-hierarchy** (collections belonging to multiple catalogs simultaneously). Enable it via `ENABLE_CATALOGS_EXTENSION`. _Coming next: Support for nested sub-catalogs._
31
32
-**11/07/2025:** 🌍 The SFEOS STAC Viewer is now available at: https://healy-hyperspatial.github.io/sfeos-web. Use this site to examine your data and test your STAC API!
32
33
-**10/24/2025:** Added `previous_token` pagination using Redis for efficient navigation. This feature allows users to navigate backwards through large result sets by storing pagination state in Redis. To use this feature, ensure Redis is configured (see [Redis for navigation](#redis-for-navigation)) and set `REDIS_ENABLE=true` in your environment.
33
34
-**10/23/2025:** The `EXCLUDED_FROM_QUERYABLES` environment variable was added to exclude fields from the `queryables` endpoint. See [docs](#excluding-fields-from-queryables).
@@ -239,6 +240,7 @@ This implementation follows the [STAC API Catalogs Extension](https://github.com
239
240
### Features
240
241
241
242
-**Hierarchical Navigation**: Browse catalogs and sub-catalogs in a parent-child relationship structure
243
+
-**Multi-Catalog Collections**: Collections can belong to multiple catalogs simultaneously, enabling flexible organizational hierarchies
242
244
-**Collection Discovery**: Access collections within specific catalog contexts
243
245
-**STAC API Compliance**: Follows STAC specification for catalog objects and linking
244
246
-**Flexible Querying**: Support for standard STAC API query parameters when browsing collections within catalogs
@@ -252,6 +254,7 @@ This implementation follows the [STAC API Catalogs Extension](https://github.com
252
254
-**GET `/catalogs/{catalog_id}/collections`**: Retrieve collections within a specific catalog
253
255
-**POST `/catalogs/{catalog_id}/collections`**: Create a new collection within a specific catalog
254
256
-**GET `/catalogs/{catalog_id}/collections/{collection_id}`**: Retrieve a specific collection within a catalog
257
+
-**DELETE `/catalogs/{catalog_id}/collections/{collection_id}`**: Delete a collection from a catalog (removes parent_id if multiple parents exist, deletes collection if it's the only parent)
255
258
-**GET `/catalogs/{catalog_id}/collections/{collection_id}/items`**: Retrieve items within a collection in a catalog context
256
259
-**GET `/catalogs/{catalog_id}/collections/{collection_id}/items/{item_id}`**: Retrieve a specific item within a catalog context
0 commit comments