---
title: "Deliver Editing Request"
method: POST
path: "/api/tryon/editing/requests/{request_id}/deliver"
tags: ["tryon-editing"]
---

# Deliver Editing Request

`POST /api/tryon/editing/requests/{request_id}/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/editing/requests/{request_id}/deliver`
- Auth: none declared

Worker callback. Updates request status + outputs, clears any
editing badge on the source cell.

Body shape matches the media-worker's ``_send_callback()`` flat
payload — ``{job_id, atom_type, **result}`` with the result fields
(``s3_key``, ``s3_keys``, ``image_url``, ``width``, ``height``,
optional ``outputs[]``, optional ``status``/``error``) at the top
level. ``s3_key`` is the canonical single-output case;
``s3_keys``/``outputs`` carry multi-shot variants.

## Path parameters

- `request_id` string, uuid, required

## Request body

- TryonEditingDeliverBody: Worker-side flattened callback shape. The media-worker's ``_send_callback()`` posts ``{"job_id": ..., "atom_type": ..., **result}`` (the result dict is spread at top level). We accept that shape directly here rather than forcing the worker to reshape per-route.
  - `job_id` string, nullable
  - `atom_type` string, nullable
  - `status` string, nullable
  - `error` string, nullable
  - `error_message` string, nullable
  - `s3_key` string, nullable
  - `s3_keys` string[], nullable
  - `image_url` string, nullable
  - `width` integer, nullable
  - `height` integer, nullable
  - `outputs` object[], nullable

## Response `200`

Successful Response

- TryonEditingRequestResponse
  - `id` string, uuid, required
  - `editing_project_id` string, uuid, required
  - `tool_name` string, required
  - `status` string, required
  - `input_image_s3_key` string, required
  - `input_image_url` string, nullable
  - `input_payload` object, required
  - `outputs` TryonEditingOutput[]
    - `s3_key` string, required
    - `image_url` string, nullable
    - `width` integer, nullable
    - `height` integer, nullable
  - `job_id` string, uuid, nullable, required
  - `error_reason` string, nullable, required
  - `created_at` string, date-time, required
  - `completed_at` string, date-time, nullable, 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)
