livepeer / livepeer/studio

Disallow exporting to Studio-managed storage (replaced by PATCH)

Open
#1,142 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

team: studio
Dominant language
TypeScript
Stars
88
Forks
37
PR merge metrics
No merged PRs in 30d

Description

Export is no longer the way for storing assets in additional (decentralized) storages.

Instead, we will providing state in the `asset` objects themselves, which the users can `PATCH` and edit to add or remove from such additional storages.

The export API should only be used now for exporting to user managed storages instead, which are not managed by Studio itself.

Examples are exporting to your own IPFS pinning node (right now, we only support a custom Pinata API key), or exporting to a custom URL, which can be anything else (from an S3-like storage to other video platforms like Mux).

To avoid confusion in the API, having several ways of doing the same thing, we should prohibit the export API from being used for exporting to Studio-managed storage.

So, right now, TLDR:
The /export API should return an error if the user tries to export to IPFS without providing custom credentials for their own Pinata account. Saving to the Studio-managed IPFS node should be done through the `PATCH /asset` API instead.

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 tracing the /export API and the PATCH /asset API to find how Studio-managed IPFS storage is distinguished from user-managed destinations. Confirm the export behavior for IPFS with and without custom Pinata credentials, and consider the work done when Studio-managed exports return an error while user-managed exports remain available.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
api, backend
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.