Image Forgery Detection
API

Detect forgery in any image with 1 API call

Request & Response Examples

Use these examples to build and debug your integration

Sample HTTP Request

POST https://{your-api-domain}/forgery_detection
Headers:
  Authorization: Bearer {YOUR_API_TOKEN}
  Content-Type: application/json; charset=UTF-8

Body:
{
  "image": "<BASE64_IMAGE_WITHOUT_PREFIX>",
  "return_heatmap": "false",
  "detect_proportion": "false",
  "restrict_probability": "0.8"
}

Sample Responses

Successful response

When the request is valid and the image is processed successfully, the API returns detection_result indicating whether the image is tampered (fake) or authentic (real), along with optional tampering confidence, heatmap, and location coordinates.

HTTP/1.1 200 OK
Content-Type: application/json; charset=UTF-8

{
  "code": 0,
  "data": {
    "detection_result": "fake",
    "tampered_proportion": 0.000587,
    "heatmap": "<BASE64_HEATMAP_IMAGE>",
    "tampered_location": [
      {
        "left": 100,
        "top": 200,
        "width": 150,
        "height": 100,
        "probability": 0.95
      }
    ]
  },
  "message": "Success"
}

Business error response

When the upstream service reports a business error, the API returns error = "API_ERROR" and a non-zero code. You can map this code using the error code table below.

HTTP/1.1 400 Bad Request
Content-Type: application/json; charset=UTF-8

{
  "error": "API_ERROR",
  "code": 1004,
  "message": "Image size error. Please ensure the image is less than 5MB and the longest side is less than 4000px."
}

API Introduction

The Artificial Intelligence technology specialized in Image Forgery Detection has been made easier than ever before using ImgAuth.com API. With just a few lines of code, you can bring this technology into your application.

1

Purchase Package

Purchase a package dedicated to the API

2

Receive API Email

Within 2 hours after your purchase, you will receive an email with your dedicated API domain and AppCode.

3

Use Code Samples

Use the following code samples to get started quickly

4

Adjust Parameters

Getting back to the parameters reference to adjust the request

Authentication

We authenticate requests using a dedicated API domain and a per-account Bearer token. After you purchase an API package, we will email you your unique API domain and token. For security reasons, please do not publish your API token.

API Endpoint

POST https://{your-api-domain}/forgery_detection

Replace {your-api-domain} with the API domain we email to you after purchase. Each developer has a dedicated domain and token.

Headers

Authorization:
Bearer {YOUR_API_TOKEN}
Replace {YOUR_API_TOKEN} with the Bearer token we email to you. Keep it secret and never commit it to public repositories.
Content-Type:
application/json; charset=UTF-8

Code Examples

Get started quickly with our code samples

#!/usr/bin/env bash

set -euo pipefail

# Domain and token for the image processing proxy
API_DOMAIN="https://{your-api-domain}"
API_PATH="/forgery_detection"
API_TOKEN="{YOUR_API_TOKEN}"

# Image file passed as first argument (default: testpaper.jpg)
IMAGE_FILE="${1:-testpaper.jpg}"

if [ ! -f "$IMAGE_FILE" ]; then
  echo "Image file not found: $IMAGE_FILE" >&2
  echo "Usage: $0 path/to/image.jpg" >&2
  exit 1
fi

echo "Encoding image to Base64: $IMAGE_FILE"
# Encode image to Base64 and remove newlines (use -i for BSD base64 on macOS)
BASE64_IMAGE=$(base64 -i "$IMAGE_FILE" | tr -d '
')

echo "Building JSON body..."
read -r -d '' JSON_BODY <<EOF || true
{
  "image": "$BASE64_IMAGE",
  "return_heatmap": "false",
  "detect_proportion": "false",
  "restrict_probability": "0.8"
}
EOF

echo "Calling proxy API..."
curl -X POST "${API_DOMAIN}${API_PATH}" \
  -H "Authorization: Bearer ${API_TOKEN}" \
  -H "Content-Type: application/json; charset=UTF-8" \
  -d "$JSON_BODY" \
  -o response.json \
  -s -w "\nHTTP status: %{http_code}\n"

echo "Response saved to response.json"

Request Parameters

Configure your API requests with these parameters

ParameterTypeDescription
imagestringBase64 encoded image data, urlencoded. Size must not exceed 10MB. Shortest side at least 512px, longest side max 8192px. Supports jpg/jpeg/png/bmp formats. Either image or url is required.
urlstringComplete image URL, length not exceeding 1024 bytes. Image size must not exceed 10MB after base64 encoding. Shortest side at least 512px, longest side max 8192px. Supports jpg/jpeg/png/bmp formats. Either image or url is required. Please disable URL hotlink protection.
return_heatmapstringWhether to return forgery region heatmap. Default: false. true: returns base64-encoded heatmap, false: does not return
detect_proportionstringWhether to return image tampering confidence. Default: false. true: returns tampering confidence, false: does not return
restrict_probabilitystringThreshold for returning forgery region coordinates. Range: 0.1 to 1, supports 1 decimal place. Default: 0.8. When forgery region coordinate confidence score (probability) ≥ threshold, tampered_location returns coordinates meeting the threshold, otherwise does not return coordinates

Response Parameters

Reference for API response fields

ParameterTypeDescription
detection_resultstringTampering detection result: "fake" indicates tampering detected, "real" indicates no tampering
tampered_proportionfloatImage tampering confidence (returned when detect_proportion = true in request)
heatmapstringBase64-encoded heatmap of tampered regions (returned when return_heatmap = true in request)
tampered_locationarrayArray of forgery region coordinate information (returned when probability ≥ restrict_probability threshold). Each item contains: left, top, width, height (coordinates), and probability (confidence score)
leftuint32Horizontal coordinate of the top-left vertex of the forgery region
topuint32Vertical coordinate of the top-left vertex of the forgery region
widthuint32Width of the forgery region
heightuint32Height of the forgery region
probabilityfloatConfidence score indicating the probability of forgery in this region

Error Codes

Reference for API response codes

Error CodeError MessageDescription
0successSuccess
1000body errorRequest body error
1001param errorRequest parameter error
1002content type errorContent-Type error
1003image not existsImage file not found
1004image size errorImage size error
1005image format errorImage format error
1006invalid signatureInvalid signature
1007body size errorBody size error
1008no authorizationAuthorization failed
2000server unknown errorServer unknown error
2001server timeoutServer timeout
2003no content recognitionNo content recognized
2004validate data errorValidation data error
3000remote server errorRemote server error
4000base server errorBase server error

API Pricing Plans

The following plans are API-exclusive

Starter

$99$0.198 / Credit
500 credits
3-month validity
  • Support most image formats
  • Document correction & enhancement
  • Document forgery detection
  • Image moire pattern removal
  • Processing speed ~2 seconds
Most Popular

Popular

$349$0.07 / Credit
5,000 credits
6-month validity
  • Support most image formats
  • Document correction & enhancement
  • Document forgery detection
  • Image moire pattern removal
  • Processing speed ~2 seconds

Business

$749$0.05 / Credit
15,000 credits
1-year validity
  • Support most image formats
  • Document correction & enhancement
  • Document forgery detection
  • Image moire pattern removal
  • Processing speed ~2 seconds
Exclusive

Enterprise

$1999$0.04 / Credit
50,000 credits
1-year validity
  • Support most image formats
  • Document correction & enhancement
  • Document forgery detection
  • Image moire pattern removal
  • Processing speed ~2 seconds

Why developers trust our API

Built for production workloads, our forgery detection API balances quality, performance, and cost so you can rely on it in real-world apps.

Production-ready reliability

High availability and stable performance tuned for real-world traffic.

Optimized for forgery detection

Models focused on documents, certificates, and invoices with tampering detection for more consistent results.

Predictable, API-only pricing

Dedicated API plans with clear per-credit costs for long-term integrations.

Support when you need it

Email support to help you diagnose issues and improve your integration over time.

Image Forgery Detection API – Detect Tampering with AI | ImgAuth