---
title: "Create a virtual try-on task"
method: POST
path: "/v1/try-on"
tags: ["Virtual Try-On"]
---

# Create a virtual try-on task

`POST /v1/try-on`

## Request

- Base URL: `https://api.crayonz.ai`
- URL: `https://api.crayonz.ai/v1/try-on`
- Auth: API key in header `X-API-Key`

Render a user wearing a product. Async — returns a task_id; poll /v1/tasks/:id for the result.

## Request body

- object
  - `userPhoto` string, required: URL or base64 of the user photo
  - `productImage` string, required: URL or base64 of the product image
  - `customPrompt` string: Optional styling instructions

## Response `200`

Success

- object
  - `taskId` string: Poll GET /v1/tasks/{taskId} with this id
  - `status` string: queued, processing, completed or failed
  - `message` string

## Other responses

- `401`: Unauthorized — invalid or missing API key
- `402`: Insufficient credits
- `429`: Rate limit exceeded

---

[API](https://skmtc.dev/crayonz/apis/crayonz-api.md) · [All operations](https://skmtc.dev/crayonz/apis/crayonz-api/llms.txt) · [OpenAPI document](https://skmtc.dev/crayonz/apis/crayonz-api/revisions/1114c84167b2?raw)
