Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide a way to add / remove collections from communities #9824

Open
kshepherd opened this issue Sep 13, 2024 · 1 comment
Open

Provide a way to add / remove collections from communities #9824

kshepherd opened this issue Sep 13, 2024 · 1 comment
Labels
help wanted Needs a volunteer to claim to move forward interface: REST API v7+ REST API for v7 and later (dspace-server-webapp module) new feature

Comments

@kshepherd
Copy link
Member

Description

The Community hibernate model and spring service provide ways to add and remove collections, but these operations are not exposed over the REST API, so there is no way to provide a "move collection" feature in the UI or with a REST integration.

Proposed solution

Allow POST or DELETE to the /collections path on the community endpoint with simple uri-list of collection URIs to add or delete?

We might have to consider what happens if we accidentally remove a collection from its only community, or if we even allow that.

@kshepherd kshepherd added new feature needs triage New issue needs triage and/or scheduling labels Sep 13, 2024
@tdonohue
Copy link
Member

This seems to be related to DSpace/dspace-angular#3196 In other words, it's probably required if we want to have a way to move Collections between Communities.

However, I'd argue we may want to consider implementing this similar to how "Move Item" works: https://github.com/DSpace/RestContract/blob/main/items.md#owning-collection

To Move an Item you are doing a PUT /api/core/items/<:uuid>/owningCollection to update the "owningCollection".

So, to move a Collection, you might do something like PUT /api/core/collections/<:uuid>/owningCommunity.

I realize "owningCommunity" is a new concept, but I think this would be safer than having separate POST/DELETE options. As @kshepherd noted above, the risk of POST/DELETE is that you might remove a Collection from a Community without linking it up to a new Community. That would currently leave the Collection "unfindable" (at least not findable through browse)

@tdonohue tdonohue added help wanted Needs a volunteer to claim to move forward interface: REST API v7+ REST API for v7 and later (dspace-server-webapp module) and removed needs triage New issue needs triage and/or scheduling labels Sep 13, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Needs a volunteer to claim to move forward interface: REST API v7+ REST API for v7 and later (dspace-server-webapp module) new feature
Projects
Status: 📋 To Do
Development

No branches or pull requests

2 participants