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.
Purchase Package
Purchase a package dedicated to the API
Receive API Email
Within 2 hours after your purchase, you will receive an email with your dedicated API domain and AppCode.
Use Code Samples
Use the following code samples to get started quickly
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
Replace {your-api-domain} with the API domain we email to you after purchase. Each developer has a dedicated domain and token.
Headers
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
| Parameter | Type | Description |
|---|---|---|
| image | string | Base64 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. |
| url | string | Complete 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_heatmap | string | Whether to return forgery region heatmap. Default: false. true: returns base64-encoded heatmap, false: does not return |
| detect_proportion | string | Whether to return image tampering confidence. Default: false. true: returns tampering confidence, false: does not return |
| restrict_probability | string | Threshold 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
| Parameter | Type | Description |
|---|---|---|
| detection_result | string | Tampering detection result: "fake" indicates tampering detected, "real" indicates no tampering |
| tampered_proportion | float | Image tampering confidence (returned when detect_proportion = true in request) |
| heatmap | string | Base64-encoded heatmap of tampered regions (returned when return_heatmap = true in request) |
| tampered_location | array | Array of forgery region coordinate information (returned when probability ≥ restrict_probability threshold). Each item contains: left, top, width, height (coordinates), and probability (confidence score) |
| left | uint32 | Horizontal coordinate of the top-left vertex of the forgery region |
| top | uint32 | Vertical coordinate of the top-left vertex of the forgery region |
| width | uint32 | Width of the forgery region |
| height | uint32 | Height of the forgery region |
| probability | float | Confidence score indicating the probability of forgery in this region |
Error Codes
Reference for API response codes
| Error Code | Error Message | Description |
|---|---|---|
| 0 | success | Success |
| 1000 | body error | Request body error |
| 1001 | param error | Request parameter error |
| 1002 | content type error | Content-Type error |
| 1003 | image not exists | Image file not found |
| 1004 | image size error | Image size error |
| 1005 | image format error | Image format error |
| 1006 | invalid signature | Invalid signature |
| 1007 | body size error | Body size error |
| 1008 | no authorization | Authorization failed |
| 2000 | server unknown error | Server unknown error |
| 2001 | server timeout | Server timeout |
| 2003 | no content recognition | No content recognized |
| 2004 | validate data error | Validation data error |
| 3000 | remote server error | Remote server error |
| 4000 | base server error | Base server error |
API Pricing Plans
The following plans are API-exclusive
Starter
- Support most image formats
- Document correction & enhancement
- Document forgery detection
- Image moire pattern removal
- Processing speed ~2 seconds
Popular
- Support most image formats
- Document correction & enhancement
- Document forgery detection
- Image moire pattern removal
- Processing speed ~2 seconds
Business
- Support most image formats
- Document correction & enhancement
- Document forgery detection
- Image moire pattern removal
- Processing speed ~2 seconds
Enterprise
- 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.