Video
Create an image asset
Add an image to an existing group. After processing, reference it as `asset://<ID>` in a supported Seedance request.
Availability
Section titled “Availability”This page documents the Modelflare asset-management route. Calls require a valid media API key, an available media channel, and the required permission.
Endpoint
Section titled “Endpoint”POST https://modelflare.dev/volc/asset/CreateAsset
Authentication
Section titled “Authentication”Use a Modelflare API key:
-H "Authorization: Bearer YOUR_MODELFLARE_API_KEY"Send Idempotency-Key with create, update, and delete requests. Retrying the same key for the same user replays the saved response without repeating the mutation.
Request
Section titled “Request”Add an image to an existing group. After processing, reference it as asset://<ID> in a supported Seedance request.
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
GroupId |
string |
Yes | Target asset group ID. | group-20260320141746-zsf6b |
AssetType |
Image |
Yes | Must be Image. |
Image |
URL |
string |
Yes | Public URL, data URI, or raw Base64. Images must be smaller than 30 MB, 300–6000 px on each side, and have a 0.4–2.5 aspect ratio. | https://example.com/image.jpg |
file |
binary |
No | Multipart alternative to URL. JPEG, PNG, WebP, BMP, TIFF, GIF, HEIC, and HEIF are accepted. |
image.jpg |
Name |
string |
No | Display/search name, up to 64 characters. It is not sent to the model. | character-reference |
model |
string |
No | Use volc-asset for the standard route or volc-asset-nsfw for the separately authorized sensitive-content route. |
volc-asset |
ProjectName |
string |
No | Project name. It must match the target group; defaults to default. |
default |
JSON example:
{ "model": "volc-asset", "GroupId": "group-20260320141746-zsf6b", "Name": "character-reference", "AssetType": "Image", "URL": "https://example.com/image.jpg"}multipart/form-data example:
curl --request POST https://modelflare.dev/volc/asset/CreateAsset \ --header "Authorization: Bearer YOUR_MODELFLARE_API_KEY" \ --form "model=volc-asset" \ --form "GroupId=group-20260320141746-zsf6b" \ --form "file=@image.jpg"Response
Section titled “Response”The image has entered asynchronous processing. Poll GetAsset until Status is Active or Failed. There is no upload-time SLA; a typical image takes about 6–9 seconds, while a busy review queue can take roughly 10 seconds to 2 minutes.
| Field | Type | Required | Description | Example |
|---|---|---|---|---|
Id |
string |
Yes | Asset ID. Use asset://<ID> only after the status is Active. |
asset-20260528140922-d9646 |
Response example:
{ "Id": "asset-20260528140922-d9646"}Errors
Section titled “Errors”| Status | Meaning |
|---|---|
400 |
The request is invalid. |
401 |
The API key is missing or unauthorized. |
Error body example (when returned):
{ "error": { "code": "invalid_request", "message": "Request validation failed." }}Image, video, and audio creation are asynchronous. After receiving an asset ID, call GetAsset and use the asset://<ID> reference only when the status is Active.