Playbook: Maestros — clip → proyecto
Objetivo: un MP4 de fútbol → proyecto 9:16 con branding Maestros del Fútbol, solo por API.
Prerrequisitos
- Studio en
$BASE(p. ej.http://127.0.0.1:3000o:3010) STUDIO_API_TOKENconfigurado- Template
tpl_user_maestros_day4(seed +create-maestros-user-template.ts) - Worker solo si vas a
type=export
export TOKEN="$STUDIO_API_TOKEN"
export BASE="${BASE:-http://127.0.0.1:3000}"
export VIDEO="/path/to/clip.mp4"
export TEXTO="Título del clip"
Ops: docs/ops/n8n-maestros-stack.md.
1. Subir clip
UPLOAD=$(curl -sS -X POST "$BASE/api/assets" \
-H "Authorization: Bearer $TOKEN" \
-F "file=@${VIDEO}")
ASSET_ID=$(echo "$UPLOAD" | jq -r '.asset.id')
echo "assetId=$ASSET_ID"
2. Instanciar plantilla
Variables: texto + video (solo slot 0).
PROJECT=$(curl -sS -X POST "$BASE/api/projects/from-template" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d "$(jq -n \
--arg tid "tpl_user_maestros_day4" \
--arg name "Maestros — ${TEXTO}" \
--arg texto "$TEXTO" \
--arg video "$ASSET_ID" \
'{templateId:$tid,name:$name,values:{texto:$texto,video:$video}}')")
PROJECT_ID=$(echo "$PROJECT" | jq -r '.project.id')
echo "edit=$BASE/edit/$PROJECT_ID"
3. Export opcional
JOB=$(curl -sS -X POST "$BASE/api/jobs" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d "{\"projectId\":\"$PROJECT_ID\",\"type\":\"export\"}")
4. Multi-clip (2–4)
Ver Maestros batch.
Checklist
-
assetIdyprojectIdno sonnull - UI en
/edit/$PROJECT_IDmuestra branding + clip - Smoke:
./scripts/n8n-maestros-smoke.sh "$VIDEO" "$TEXTO"