Update Template Assignments

Manually overwrite the cached VLM-derived nail → mask mapping.

Use case: the VLM occasionally mis-labels a finger; the user opens the detail-view editor, swaps two mask IDs, hits Save. We re-render 01_hand_assigned.png with the new mapping + rewrite assignments.json at the same S3 keys. The next try-on against this template hydrates the new mapping via the existing cache path and the warp uses the corrected assignments.

Validation:

  • Template must be visible to the caller AND non-admin (admin rows are global; we don't let one user mutate the shared catalog).
  • Cache must already be populated (hand_preprocess non-null).
  • Submitted mask_ids must form a permutation of the currently- cached assigned mask_ids (no new masks, no missing ones).
  • Submitted (hand, finger) pairs must be unique.
patch/api/hand-templates/{template_id}/assignments

Request

  • Base URL: https://api.tintin-x.com (the document declares no server; this is the origin it was published from)
  • URL: https://api.tintin-x.com/api/hand-templates/{template_id}/assignments
  • Auth: HTTP bearer

Path parameters

template_idstring uuid required

Request body

Response

Successful Response

idstring uuid required
slugstring required
labelstring required
pose'single_hand' | 'two_hands_layered' | 'fist_flat_dual' | 'holding_prop' required
skin_tone'fair' | 'light' | 'medium' | 'tan' | 'deep' required
aspect_ratio'1:1' | '4:5' | '3:4' | '16:9' required
background'white' | 'gradient' | 'extended' required
prop_slugstring nullable
hand_urlstring required
preview_urlstring nullable
source'admin' | 'upload' | 'ai_gen' required
is_activeboolean required
gen_promptstring nullable
owner_user_idstring uuid nullable
preprocess_readyboolean
created_atstring date-time required
updated_atstring date-time required
stage_statusobject

Changes

No recorded changes to this operation across all 1 revision of this API.