IQSS / IQSS/dataverse

External Tool API: Check if a File Meets the Requirements of a Given Tool

Open
#11,938 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Feature: API Feature: External Tool GREI Re-arch SPA Type: Feature
Dominant language
Java
Stars
1.1k
Forks
564
Avg merge
2d 2h
Merged PRs (30d)
29

Description

Overview of the Feature Request
Based on the discussion here https://github.com/IQSS/dataverse-frontend/pull/815, certain external tools require auxiliary files before they can be used, we need an api for this condition. In the front end, currently we are filtering out external tools with requirements, which should be removed after this api.

To support this in the SPA and API workflows, a new endpoint is proposed to check whether a given file meets the requirements for a particular tool, like GET /api/files/{fileId}/meetsRequirements/{toolId}
This API could return a simple boolean result, indicating whether the file satisfies all the tool’s requirements.

What kind of user is the feature intended for?
(Example users roles: API User, Curator, Depositor, Guest, Superuser, Sysadmin)
API users

What inspired the request?

What existing behavior do you want changed?

Any brand new behavior do you want to add to Dataverse?

Any open or closed issues related to this feature request?
https://github.com/IQSS/dataverse/pull/11760

Are you thinking about creating a pull request for this feature?
Help is always welcome, is this feature something you or your organization plan to implement?

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing the related pull request #11760 and the frontend discussion in dataverse-frontend#815 to understand external-tool requirements and current filtering. Trace the existing file and external-tool API workflows before defining the proposed endpoint. Done means API users can check whether a given file meets a selected tool's requirements and the SPA can use that result.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, backend-api-design
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.