DEVELOPER API / V1

開發者 API

將 AI 圖片偵測接入應用程式。上傳單張圖片,取得偵測分數與判斷結果。

$14.99

購買一次 Developer 永久解鎖 API,之後可購買任意點數包補充餘額。

1,500

付費點數

API 每次成功偵測消耗 1 個付費點數;每日免費偵測僅適用於網頁。

JPEG · PNG · WebP

10 MiB / 40 MP

偵測結果為估計值,不能作為真偽證明。

快速開始

API 金鑰屬於機密,僅用於伺服器端。

cURL
curl 'https://isthisimageai.org/api/v1/detect' \
  -H "Authorization: Bearer $ISTHISIMAGE_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -F 'image=@photo.jpg'
Python
import os, uuid, requests

with open("photo.jpg", "rb") as image:
    response = requests.post(
        "https://isthisimageai.org/api/v1/detect",
        headers={"Authorization": "Bearer " + os.environ["ISTHISIMAGE_API_KEY"],
                 "Idempotency-Key": str(uuid.uuid4())},
        files={"image": ("photo.jpg", image, "image/jpeg")}, timeout=120)
print(response.status_code, response.json())
Node.js
import { readFile } from 'node:fs/promises';

const form = new FormData();
form.set('image', new Blob([await readFile('photo.jpg')], { type: 'image/jpeg' }), 'photo.jpg');
const response = await fetch('https://isthisimageai.org/api/v1/detect', {
  method: 'POST',
  headers: { Authorization: 'Bearer ' + process.env.ISTHISIMAGE_API_KEY,
             'Idempotency-Key': crypto.randomUUID() },
  body: form
});
console.log(response.status, await response.json());
{"ok":true,"request_id":"…","result":{"score":0.92,"verdict":"likely_ai"},"credits_charged":1,"remaining_credits":1499}

用量與限制

API 每次成功偵測消耗 1 個付費點數;每日免費偵測僅適用於網頁。

POST /api/v1/detect
10 / min · 2 concurrent
GET /api/v1/usage
60 / min
Idempotency-Key
UUID v4

Developer 訂單發生已確認退款後,該筆購買授予的 API 權限將被撤回。

400INVALID_REQUEST / INVALID_IMAGE
401INVALID_API_KEY
402INSUFFICIENT_CREDITS
403API_ACCESS_REQUIRED
409IDEMPOTENCY_CONFLICT
409REQUEST_IN_PROGRESS
409CONCURRENCY_LIMIT
413IMAGE_TOO_LARGE
415UNSUPPORTED_IMAGE
429RATE_LIMITED
503API_UNAVAILABLE / DETECTOR_UNAVAILABLE
504PROVIDER_TIMEOUT
500INTERNAL_ERROR