---
title: "Deliver Critic For Tryon"
method: POST
path: "/api/tryon/jobs/{job_id}/critic-deliver"
tags: ["tryon"]
---

# Deliver Critic For Tryon

`POST /api/tryon/jobs/{job_id}/critic-deliver`

## 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/tryon/jobs/{job_id}/critic-deliver`
- Auth: none declared

smart_edit_critic callback for tryon validation. Writes the
critic's verdict into row.data (qa_score / qa_pass / qa_notes /
qa_suggested_regen_note), flips the tryon output cell from
``validating`` back to ``done`` (or ``failed`` when the critic
couldn't run), and triggers the pose/video cascade with the fresh
QA in hand so the auto-regen loop operates on real critic
feedback.

Failure-mode policy: a critic that errors out still releases the
gate (cell flips to done, cascade fires) so a flaky validator
can't block the user. Same shape as the bitable
/cell-validation handler.

## Path parameters

- `job_id` string, uuid, required

## Request body

- TryonCriticDeliver: Posted by tintin-media-worker's smart_edit_critic atom to the tryon critic-deliver endpoint. Wire shape mirrors the bitable B8 CellValidationCreate so a single critic atom serves both surfaces.
  - `score` number, nullable
  - `findings` object[]
  - `suggested_regen_note` string, nullable
  - `raw` object, nullable
  - `validator_skill` string, nullable
  - `atom_job_id` string, nullable
  - `error` string, nullable

## Response `200`

Successful Response

- TryonJobResponse
  - `id` string, uuid, required
  - `project_id` string, uuid, required
  - `row_id` string, uuid, nullable, required
  - `owner_user_id` string, uuid, required
  - `owner_team_id` string, uuid, nullable, required
  - `sku_id` string, nullable, required
  - `product_type` string, nullable, required
  - `step_key` string, nullable, required
  - `recipe_key` string, nullable, required
  - `status` string, required
  - `atom_type` string, nullable, required
  - `atom_job_id` string, nullable, required
  - `source_kind` string, nullable, required
  - `source_ref` string, nullable, required
  - `input_payload` object, required
  - `output_payload` object, required
  - `error_message` string, nullable, required
  - `attempt_count` integer, required
  - `started_at` string, date-time, nullable, required
  - `completed_at` string, date-time, nullable, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/tintin-x/apis/tintin-api.md) · [All operations](https://skmtc.dev/tintin-x/apis/tintin-api/llms.txt) · [OpenAPI document](https://skmtc.dev/tintin-x/apis/tintin-api/revisions/8839a8d0a66c?raw)
