curl --request POST \
--url https://api.geekidea.ai/v1/videos/clone/{id}/assets/{asset_id}/regenerate \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "<string>",
"feedback": "猫的毛色再浅一些"
}
'import requests
url = "https://api.geekidea.ai/v1/videos/clone/{id}/assets/{asset_id}/regenerate"
payload = {
"prompt": "<string>",
"feedback": "猫的毛色再浅一些"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({prompt: '<string>', feedback: '猫的毛色再浅一些'})
};
fetch('https://api.geekidea.ai/v1/videos/clone/{id}/assets/{asset_id}/regenerate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "casset_0192f1c3a7b87c3e9a4f5b6c7d8e9f01",
"object": "video.clone.asset",
"revision_no": 1,
"kind": "image",
"role": "frame",
"slot": "image:s01_first",
"shot_key": "s01",
"subject_key": "cat",
"status": "succeeded",
"selected": true,
"stale": true,
"source": "generated",
"file": {
"file_id": "<string>",
"url": "<string>",
"mime": "<string>",
"width": 123,
"height": 123
},
"generation_id": "<string>",
"prompt": "<string>",
"feedback": "<string>",
"error_code": "<string>",
"created_at": 123
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}Regenerate an asset
Regenerates one subject sheet, frame or shot clip, optionally with a new prompt or feedback. It is billed on its own (model cost plus the fee for one image or the shot’s seconds) and does not reset steps. When it succeeds the new candidate is selected and dependent assets are marked stale. Returns 409 while the run is running or the slot is already generating.
curl --request POST \
--url https://api.geekidea.ai/v1/videos/clone/{id}/assets/{asset_id}/regenerate \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "<string>",
"feedback": "猫的毛色再浅一些"
}
'import requests
url = "https://api.geekidea.ai/v1/videos/clone/{id}/assets/{asset_id}/regenerate"
payload = {
"prompt": "<string>",
"feedback": "猫的毛色再浅一些"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({prompt: '<string>', feedback: '猫的毛色再浅一些'})
};
fetch('https://api.geekidea.ai/v1/videos/clone/{id}/assets/{asset_id}/regenerate', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"id": "casset_0192f1c3a7b87c3e9a4f5b6c7d8e9f01",
"object": "video.clone.asset",
"revision_no": 1,
"kind": "image",
"role": "frame",
"slot": "image:s01_first",
"shot_key": "s01",
"subject_key": "cat",
"status": "succeeded",
"selected": true,
"stale": true,
"source": "generated",
"file": {
"file_id": "<string>",
"url": "<string>",
"mime": "<string>",
"width": 123,
"height": 123
},
"generation_id": "<string>",
"prompt": "<string>",
"feedback": "<string>",
"error_code": "<string>",
"created_at": 123
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}{
"error": {
"message": "The model does not exist or you do not have access to it.",
"type": "not_found_error",
"param": "model",
"code": "model_not_found",
"retryable": false,
"errors": [
{
"param": "messages",
"code": "missing_parameter",
"message": "<string>"
}
]
}
}Authorizations
Provide your API key in the Authorization header using Bearer auth
Headers
Body
Response
OK
An asset candidate: subject sheet, frame, source frame, depth video, shot clip or voiceover. Of the candidates in one slot the selected one is used.
Asset ID
"casset_0192f1c3a7b87c3e9a4f5b6c7d8e9f01"
Always video.clone.asset
"video.clone.asset"
Revision number
1
image / video / audio / depth
image, video, audio, depth "image"
subject / frame / source_frame / motion / clip / voice
"frame"
Slot, e.g. image:s01_first or clip:s01
"image:s01_first"
Shot it belongs to
"s01"
Subject it shows
"cat"
generating / succeeded / failed
generating, succeeded, failed "succeeded"
Whether it is the selected candidate of its slot
An input it was made from (subject sheet, frame or depth video) has changed since
generated / regenerated / uploaded / extracted / dubbed
"generated"
A file with a signed download link.
Show child attributes
Show child attributes
Generation ID of the model call
Prompt
Feedback
Error code when it failed
Creation time (Unix seconds)
