Skip to main content
GET
cURL
Use this endpoint to check an order’s status and read its result. It works for every order type (Anti-AI, AI Detection, watermark embed, and watermark extract), whether you created the order with v2 or v3. Every order returns the same top-level fields; only result changes with type.
The response shape changed on October 8, 2026. If your code reads files, outputs, the top-level reports, fileCount, or statusCode from this endpoint, see Changes from the previous response.

Common fields

Status

Watermark extract orders created with v2 that are stored as detected or undetected return complete. Read the outcome from result.detectionStatus.

Input files

Each inputFiles[] item has fileId and fileName, in the order of your create request. Two more keys appear only when they apply. When they do not apply, the key is omitted rather than set to null.
  • role appears only on watermarkExtract orders. original is the file the watermark was embedded in, and query is the file to check.
  • uploadUrl appears only while status is pending and the file is still waiting for upload. PUT the file to this URL. If an upload URL expires, call this endpoint again for a fresh one.
Every fileId in this response and in the download response is a numeric string such as "11". It never contains a separator such as -.

Result by order type

result is an object only when status is complete. The key is always present and is null in every other status.
result.outputFiles[] has one output file for each input file.

Examples

Completed orders of each type:
Orders that are not complete return result: null:
  • Pending: only files that are still waiting for upload have uploadUrl. Watermark embed, Anti-AI, and AI Detection orders have no role.
  • Failed: errors has the reason, and result is null. errorMessage is a fixed Korean message for the error code.
  • Expired: you can still get the order after the retention period ends, but result is null and no URLs are issued. Downloads return 400 ORDER_EXPIRED.

Changes from the previous response

On October 8, 2026, this endpoint switched to the shape above. This is a breaking change. The deprecated GET /api/v2/orders/{orderId} still returns its previous response, unchanged.

Test keys

With an sk_test_ key, this endpoint returns only test orders created with the same key, in the shape above. See Test API keys for how test orders move through each status.

Authorizations

Authorization
string
header
required

Bearer API key for external client access. Live keys use the sk_ prefix; test keys use the sk_test_ prefix and support order-lifecycle testing with mock responses without processing or credit usage.

Path Parameters

orderId
string
required

Order ID

Pattern: ^[0-9]{1,20}$

Response

Order details. The top-level fields are the same for every order type; only result depends on type

data
Anti-AI · object
required

v3 order detail. The top-level fields are the same for every order type (PublicOrderV3DetailCommon); only result, and inputFiles[].role on extract orders, differ by type