The New Black AI

Look Film API

Look Film — workflow

Your look in motion, full frame, with three photos or clips of it in a column beside it and the pieces worn listed below. For drops and new-in posts.

POST/v1/generateworkflow: motion_look_film-v1

One endpoint serves every workflow — this page documents motion_look_film-v1, the current version. Credits are debited at submission (1 cr/s standard, 1 cr/s pro); a failed generation is refunded automatically. Earlier versions of this endpoint, if any, keep being served under their own names.

ParameterValue for this workflow
workflow"motion_look_film-v1" required
look_videoVideo — one public HTTPS URL.required
photo_1Photo 1 — one public HTTPS URL.required
photo_2Photo 2 — one public HTTPS URL.required
photo_3Photo 3 — one public HTTPS URL.required
fields.name_1Piece 1 name. Defaults to “Cropped Jacket”.
fields.ref_1Piece 1 reference. Defaults to “J-001”.
fields.name_2Piece 2 name. Defaults to “Tailored Trousers”.
fields.ref_2Piece 2 reference. Defaults to “P-001”.
fields.name_3Piece 3 name. Defaults to “Ankle Boots”.
fields.ref_3Piece 3 reference. Defaults to “S-001”.
fields.backgroundBackground. Defaults to “#ECECEC”.
fields.inkText. Defaults to “#161616”.
duration10 (seconds)
tier"standard" (1 cr/s), "pro" (1 cr/s)
webhook_urlOptional — we POST the outcome here when the generation settles. Without it, poll the URL returned in the response until the status settles.

Example request

curl -X POST https://thenewblack.ai/api/v1/generate \
  -H "Authorization: Bearer tnb_live_XXXXXXXXXXXX" \
  -H "Content-Type: application/json" \
  -d '{
    "workflow": "motion_look_film-v1",
    "look_video": "https://example.com/image.jpg",
    "photo_1": "https://example.com/image.jpg",
    "photo_2": "https://example.com/image.jpg",
    "photo_3": "https://example.com/image.jpg",
    "fields": {
      "name_1": "Cropped Jacket",
      "ref_1": "J-001",
      "name_2": "Tailored Trousers",
      "ref_2": "P-001",
      "name_3": "Ankle Boots",
      "ref_3": "S-001",
      "background": "#ECECEC",
      "ink": "#161616"
    },
    "duration": "10",
    "tier": "standard"
  }'
// 202 Accepted
{
  "generation_id": "3f1c9a6e-...",
  "status": "running",
  "poll": "/api/v1/generations/3f1c9a6e-..."
}

Example response

Poll /v1/generations/{id} (or receive the webhook) until the generation settles:

// 200 OK
{
  "generation_id": "3f1c9a6e-...",
  "workflow": "motion_look_film",
  "status": "succeeded",
  "result": {
    "type": "video",
    "url": "https://.../result.mp4",
    "thumbnail": "https://.../thumb.webp"
  }
}

Results are stored for 48 hours — copy them to your own storage. Authentication, errors and webhooks are documented in the full API reference.

Frequently asked questions

What does the Look Film endpoint need?

look_video (Video), photo_1 (Photo 1), photo_2 (Photo 2), photo_3 (Photo 3), fields.name_1 (Piece 1 name, optional), fields.ref_1 (Piece 1 reference, optional), fields.name_2 (Piece 2 name, optional), fields.ref_2 (Piece 2 reference, optional), fields.name_3 (Piece 3 name, optional), fields.ref_3 (Piece 3 reference, optional), fields.background (Background, optional), fields.ink (Text, optional) — all as listed in the parameter table above, and in GET /v1/catalog.

How is it billed?

Per second of output, at the standard, pro or ultra rate shown above; a failed generation is refunded.

How much does it cost?

1 credit per second on the standard tier, 1 per second on pro. Credits come with plans and packs; a failed generation is always refunded.

Other endpoints: Virtual Try-On API · AI Fashion Models API · Fashion Design API · Reimagine Model API · Swap Model API · AI Stylist API · all endpoints