IQSS / IQSS/dataverse

Feature Request: Implement File Upload via API for Branding and Language Resources

Open
#11,348 0 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Type: Feature
Dominant language
Java
Stars
1.1k
Forks
564
Avg merge
2d 2h
Merged PRs (30d)
29

Description

Summary

Add API support for uploading front-end resources (HTML templates, CSS files) and language packs to Dataverse, utilizing the existing file handling mechanisms already present in the Dataverse API infrastructure.

Currently, deploying front-end customizations and language packs to Dataverse environments requires using SCP or similar shell-based tools. This presents significant challenges in complex network environments that utilize bastion hosts and multiple security gateways. The current approach:

  • Complicates deployment processes in secure environments
  • Requires direct shell access which may not always be available
  • Creates unnecessary operational overhead for routine updates
Proposed Solution

Extend the existing Dataverse API capabilities (which already support zip file uploads and unpacking for datasets) to handle:

  • Branding logo upload
  • HTML template and CSS uploads for branding customizations
  • Language pack (languages.zip) file uploads

This would leverage existing infrastructure and patterns already proven in the Dataverse API ecosystem rather than creating entirely new mechanisms.

Benefits
  • Simplifies deployment in complex network environments
  • Enables automation through standard API calls
  • Aligns with existing patterns familiar to Dataverse developers
  • Supports CI/CD pipelines without requiring shell access
  • Reduces operational complexity for routine updates
  • Provides a more consistent developer experience across Dataverse customization tasks
Implementation Notes

The solution could utilize Base64 encoding for transferring code files with special characters
The implementation pattern should mirror the existing dataset upload functionality
Authentication and authorization should follow existing Dataverse API security patterns

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 locating the existing Dataverse API entry points for zip uploads and dataset unpacking, then review how authentication and authorization are applied. Done means API support covers branding logos, HTML/CSS resources, and languages.zip; the issue names no files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
api, backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.