PATCH
Update asset
PATCH /asset/:id -d { }
can be used to modify any asset
that was uploaded
with On Demand. It is a single endpoint that can update only the following
mutable properties of an asset:
name
storage
meta
Update Stored Asset
Updating Asset Name
This will allow the name of the stored asset in Livepeer Studio to be changed.
Request
curl -X PATCH https://livepeer.studio/api/asset/{id} \
-H 'content-type: application/json' \
-H 'authorization: Bearer {api-key}' \
-d { "name": "New name" }
Updating Storage
This allows to add additional storage location of where the assets are to be stored.
NOTE:
- Currently assets cannot be deleted from the default Livepeer Studio storage. You can customize any additional storage though.
- Only IPFS is supported as an additional storage at the moment. We are currently working on support for other decentralized storages like Arweave and Storj.
Request
curl -X PATCH https://livepeer.studio/api/asset/{id} \
-H 'content-type: application/json' \
-H 'authorization: Bearer {api-key}' \
-d {"storage": {"ipfs": {}}}
Updating Metadata
This allows for modifying the metadata of the asset, which is customizable NFT.
Since each marketplace has their own standard for the metadata
of the NFT, it
is up to you to determine which standard to use and fields to include.
NOTE:
- Livepeer Studio's default fields for
metadata
are:
"name": , //Populated with the asset name
"description": , //A default description referring to the asset name above
"image": //A default image including the Livepeer logo as a thumbnail
"animation_url": //URL for the Livepeer player on IPFS playing the video from Livepeer Studio
"external_url": //URL for the Livepeer player hosted on lvpr.tv playing the video from Livepeer Studio
"properties": {
"video": //CID of the original video file saved on IPFS
"com.livepeer.playbackId": //playback ID of the asset in Livepeer Studio
}
NOTICE that you can change the value or delete any of these default fields by providing a value in the
nftMetadata
field. You can delete any of the above fields by specifying them asnull
in your overrides.
Example: "animation_url": null
Request
curl -X PATCH https://livepeer.studio/api/asset/{id} \
-H 'content-type: application/json' \
-H 'authorization: Bearer {api-key}' \
-d { "meta": {
"title": "My awesome video",
"description": "This is a video of my awesome life",
"tags": "awesome,life,video"
}
}
Updating Multiple parameters
This allows for modifying the metadata of the asset, which can be used to customize the asset of the NFT metadata. These fields are customizable and are not set.
Request
curl -X PATCH https://livepeer.studio/api/asset/{id} \
-H 'content-type: application/json' \
-H 'authorization: Bearer {api-key}' \
-d {
"name": "New name",
"storage": {"ipfs": {}},
"meta": {
"title": "My awesome video",
"description": "This is a video of my awesome life",
"tags": "awesome,life,video"
}
}
Response
Returns a 200 OK
response with an object containing the updated properties
indicates that the asset
was successfully updated.