# TryOn-API.com > TryOn-API.com is the "OpenRouter for virtual try-on": a single, OpenAI-compatible API gateway that routes virtual try-on and image-generation requests to many underlying models (Kling, Google Gemini, OpenAI, FAL) behind one key, one schema, and one unified credit balance. Base URL: `https://tryon-api.com/api/v1` Auth: `Authorization: Bearer ` (keys start with `tryon_`) Pricing: per-request, billed in credits. A unified credit balance works across every provider. ## Migrate in 3 lines Already calling an OpenAI-style chat completions API? Change three things — base URL, key, model: ```js import OpenAI from "openai"; const client = new OpenAI({ baseURL: "https://tryon-api.com/api/v1", // 1. base URL apiKey: process.env.TRYON_API_KEY, // 2. your TryOn-API key }); const res = await client.chat.completions.create({ model: "kling/kolors-v1-5", // 3. a try-on model modalities: ["image"], messages: [{ role: "user", content: [ { type: "text", text: "put the garment on the person" }, { type: "image_url", image_url: { url: personDataUrl }, tryon_role: "person" }, { type: "image_url", image_url: { url: garmentDataUrl }, tryon_role: "garment" }, ]}], }); const imageUrl = res.choices[0].message.images[0].image_url.url; ``` ## Key endpoints - `POST /api/v1/chat/completions` — OpenAI-compatible chat completions with `modalities:["image"]`. Supports streaming via SSE. The primary, OpenRouter-compatible route. - `GET /api/v1/models` — list available models, capabilities and credit pricing (plus measured `tryon.metrics`: latency, success rate, health). - `GET /api/v1/status` — public per-provider/per-model health summary (measured latency, success rate, `ok`/`degraded`). - `POST /api/v1/tryon` — native multipart try-on: upload `person` + `garment` files. Async models return a job id; poll `GET /api/v1/tryon/{id}`. - `GET /api/v1/tryon/{id}` — poll status/result of an async try-on job. - `GET /api/v1/credits` — current unified credit balance (+ monthly spend-alert state under `alerts`). - `PATCH /api/v1/credits/settings` — set/clear the monthly spend-alert threshold (`{ "monthly_spend_alert_credits": number | null }`). - `GET /api/v1/keys` / `POST /api/v1/keys` / `DELETE /api/v1/keys/:id` — list / create (optional per-key `rate_limit_rpm`, `monthly_spend_cap`) / revoke API keys. Keys are stored hashed; the secret is shown once at creation. - `GET /api/v1/usage` and `GET /api/v1/generation` — usage records. - `GET /api/v1/generations` — cursor-paginated, newest-first generations list (`limit`, `cursor`, `from`, `to`, `model`). ## Supported models | Slug | Provider | Kind | Credits | Typical latency | |------|----------|------|---------|-----------------| | `kling/kolors-v1-5` | Kling | Dedicated try-on (apparel) | 1 | ~30–60s (submit + poll) | | `google/gemini-2.5-flash-image` | Google | Generative image | 1 | ~5–15s | | `openai/gpt-image-1` | OpenAI | Generative image | 2 | ~10–25s | | `fal/flux-kontext` | FAL | Generative image | 1 | ~10–20s | | `fal/flux-pro-vto` | Black Forest Labs (via fal.ai) | Dedicated try-on (apparel, beta) | 1 | ~5–15s | | `wearfits/tryon-clothing` | WEARFITS | Dedicated try-on (apparel) | 1 | ~60–90s first gen; ~6s reusing a `digital_twin_id` (use `mode: "async"`) | WEARFITS returns a `digital_twin_id`; pass it back as `digital_twin_id` on a later request to reuse the twin and skip generation (then `person_images` is optional). WEARFITS also offers footwear/bags 3D-model generation and AR try-on, catalogued under the `3d-ar` category but not yet routable (they return 3D/AR artifacts, not images). ## Pages - [Home](https://tryon-api.com/index.html): product overview and the 3-line migration snippet. - [Models](https://tryon-api.com/models.html): full catalog with capabilities and pricing. - [Rankings — Clothing](https://tryon-api.com/rankings/clothing): every model's try-on of the same garment side by side (selfie + full body), ranked. - [Rankings — Accessories](https://tryon-api.com/rankings/accessories): eyewear, footwear, bags and watches — which models support each, with results side by side. - [Compare](https://tryon-api.com/compare.html): TryOn-API.com vs OpenRouter vs calling Kling/Gemini/OpenAI/FAL directly. - [Playground](https://tryon-api.com/playground.html): upload a person + garment and run a try-on live. - [API Keys](https://tryon-api.com/keys.html): create and manage keys. - [Activity](https://tryon-api.com/activity.html): per-request generation log, daily spend chart and monthly totals. - [Credits](https://tryon-api.com/credits.html): check your unified balance and usage. ## Full reference - [llms-full.txt](https://tryon-api.com/llms-full.txt): complete machine-readable API reference with request/response examples, auth, streaming and async details.