---
title: "Create an upscale job"
method: POST
path: "/jobs"
---

# Create an upscale job

`POST /jobs`

Submit an image for upscaling. Accepts either:
- **JSON** body with `image_url` (publicly accessible URL)
- **multipart/form-data** with an `image` file field

One credit is deducted from your monthly quota.

## Request body

- JobCreateRequest — Submit a job via URL (JSON). For file upload, use multipart/form-data with an 'image' field.
  - `image_url` string, uri — Publicly accessible URL of the image to upscale.
  - `model` 'wavespeed-ai/real-esrgan' | 'wavespeed-ai/image-upscaler' — Upscaling model to use.
  - `scale` integer — Upscaling factor.

## Response `201`

Job created successfully.

- object
  - `id` string, uuid
  - `status` string
  - `model` string
  - `scale` integer
  - `created_at` string, date-time

## Other responses

- `400` — Bad request (missing image).
- `401` — Invalid or missing API key.
- `402` — Monthly quota exceeded.
- `429` — Rate limit exceeded (60 req/min per key).

---

[API](https://skmtc.net/upres/apis/upres-ai-api.md) · [All operations](https://skmtc.net/upres/apis/upres-ai-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/upres/upres-ai-api/revisions/620033ac712d/schema)
