PUT
/
v1
/
ai-image-detector-async
/
{scanId}
/
submit
curl --request POST \
  --url https://api.copyleaks.com/v1/ai-image-detector-async/my-image-scan-1/submit \
  --header 'Authorization: Bearer YOUR_LOGIN_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
    "url": "https://example.com/image1.png",
    "fileName": "image1.png",
    "model": "ai-image-1-ultra",
    "maskType": "heatmap",
    "webhooks": {
      "url": "https://your-server.com/webhook/receive-results"
    }
  }'
{}
Submit an image URL for AI-generated content detection. The endpoint is asynchronous it returns 201 Created immediately, and the detection results are delivered to your webhook URL once processing is complete. Use this endpoint when you have a publicly reachable image URL and prefer a fire-and-forget submission. For an immediate, synchronous response with the image uploaded directly in the request, use AI Image Detection instead. Authentication is required. See Login for how to obtain a bearer token.
This is a new endpoint and the official Copyleaks SDKs (Python, JavaScript, Java, C#, PHP, Ruby) don’t yet expose a wrapper method for the async flow. The code samples below call the HTTP API directly. SDK support is planned until then, use the raw HTTP pattern.

Path parameters

scanId
string
required
A unique scan id provided by you. We recommend using the same id in your database to represent the scan in the Copyleaks database this helps debug incidents and avoid duplicate scans for the same image. See criteria for creating a Scan ID.>= 3 characters   <= 36 charactersMatch pattern: [a-z0-9] !@$^&-+%=_(){}<>';:/.",~|

Headers

Content-Type: application/json
Authorization: Bearer YOUR_LOGIN_TOKEN

Body parameters

url
string
required
Publicly accessible URL of the image file to analyze.Example: "https://example.com/my-image.png"
fileName
string
required
The name of the image file including its extension.Supported extensions: .jpg, .jpeg, .png, .webp, .tiff, .bmp, .heic, .heifExample: "image1.png"
model
string
required
The AI image detection model to use for analysis.
  • AI Image 1 Ultra: "ai-image-1-ultra"
Example: "ai-image-1-ultra"
maskType
string
The type of detection overlay to return alongside the detection result. Use this when you want a pixel-level visualization of which regions of the image were flagged as AI-generated.Supported values:
  • "heatmap" gradient overlay highlighting AI-generated regions with intensity proportional to confidence.
Example: "heatmap"
headers
array
Optional custom headers to include when Copyleaks fetches the image from the provided url. Each entry is a two-element array: ["Header-Name", "Header-Value"].Example: [["X-Custom-Auth", "my-token"]]
webhooks
object
required
Webhook configuration for receiving the async results.
sandbox
boolean
default:"false"
Use sandbox mode to test your integration with the Copyleaks API without consuming any credits. Submit images for AI detection and receive mock results simulating the API. Intended for development purposes only.
developerPayload
string
An optional string payload that Copyleaks will include in the webhook response, allowing you to correlate the callback with your internal data.Example: "order-id-12345"
curl --request POST \
  --url https://api.copyleaks.com/v1/ai-image-detector-async/my-image-scan-1/submit \
  --header 'Authorization: Bearer YOUR_LOGIN_TOKEN' \
  --header 'Content-Type: application/json' \
  --data '{
    "url": "https://example.com/image1.png",
    "fileName": "image1.png",
    "model": "ai-image-1-ultra",
    "maskType": "heatmap",
    "webhooks": {
      "url": "https://your-server.com/webhook/receive-results"
    }
  }'
{}

Webhook payload

When processing completes, Copyleaks sends a POST request to your webhook URL with the detection results. The payload follows the same shape as the synchronous AI Image Detection response.