Regenerate
POST /v1/character/{id}/regenerate — re-run a character from its stored references
Endpoint
POST /v1/character/{id}/regenerateRe-runs the sheet from the stored reference images — so it keeps working
even if your original URLs have since gone away — and fans out a fresh outfit
set if the character was created with include_outfits: true.
The endpoint takes no body. The outfit choice is fixed at create; to change it, create a new character.
curl -s -X POST "https://api.goodtake.ai/v1/character/$ID/regenerate" \
-H "Authorization: Bearer $GOODTAKE_API_KEY" | jq .Response — 202 Accepted
Same job envelope as create:
{
"id": "9f1c8400-e29b-41d4-a716-446655440021",
"status": "pending",
"model": "dola-seedream-5-0-pro-260628",
"estimated_cost": 36,
"image_count": 6,
"include_outfits": true,
"poll_url": "/public/v1/character/9f1c8400-e29b-41d4-a716-446655440021"
}The previous run's images are replaced in the character response; they remain
individually accessible via GET /image/generations/{id}.
A regenerate is a new run and is billed again at the character's original price — 6 credits for a sheet-only character, 36 for one with outfits.
One open run at a time
Only one run per character can be in flight. A regenerate issued while the
previous one is still going returns 409 Conflict:
{ "error": "a generation for this character is already in progress" }This is enforced by the database rather than by a read-then-write check, so two concurrent regenerates can never both open a run — and never both bill you.
Errors
| Status | Meaning |
|---|---|
401 | Missing or invalid API key |
402 | Insufficient credits |
404 | Unknown character id, or one belonging to another organization |
409 | A run for this character is already open |
422 | The character has no usable stored reference images |
503 | The generation model is disabled or unavailable |