Remover

API

Cập nhật: 08/09/2026

Gửi một ảnh, nhận lại ảnh đã xoá watermark. Một request một ảnh, 1 credit mỗi ảnh xử lý được.

Xác thực

Tạo khoá ở Tài khoản → Khoá API. Gửi kèm mỗi request:

Authorization: Bearer rmv_live_…

Hoặc X-Api-Key: rmv_live_…

POST /api/v1/remove

multipart/form-data

TrườngBắt buộcGiá trị
imageTệp ảnh: JPEG, PNG, WebP
curl -X POST https://hoanlab.com/api/v1/remove \
  -H "Authorization: Bearer $REMOVER_API_KEY" \
  -F "[email protected]" \
  -o anh-da-xoa.jpg

Phản hồi

Ba trường hợp, phân biệt bằng Content-Type:

HTTPContent-TypeThânCredit
200image/*Ảnh đã xoá watermark1
200application/jsonKhông tìm thấy watermark0
4xx, 5xxapplication/jsonLỗi0
HTTP/1.1 200 OK
Content-Type: image/jpeg
X-Credits-Charged: 1
X-Request-Id: req_8099a383f42e4e00a0f2

<byte ảnh>
HTTP/1.1 200 OK
Content-Type: application/json
X-Credits-Charged: 0

{
  "action": "no_mark",
  "message": "Không tìm thấy watermark nào trong ảnh này.",
  "charged": 0,
  "request_id": "req_ea785a107e88470d92cd"
}
HTTP/1.1 402 Payment Required
Content-Type: application/json

{
  "error": "no_credits",
  "message": "Hết credit. Nạp thêm tại https://hoanlab.com/remover/buy",
  "request_id": "req_4532a6cab69f4dfe823b"
}

GET /api/v1/account

curl https://hoanlab.com/api/v1/account \
  -H "Authorization: Bearer $REMOVER_API_KEY"

{"balance": 147}

Giới hạn

Kích thước tệp25 MB
Điểm ảnh — JPEG, WebP30 MP
Điểm ảnh — PNG12 MP
Ảnh mỗi request1

Mã lỗi

HTTPerrorNghĩaThử lại
400bad_requestThiếu image, hoặc tệp không đọc được như ảnhkhông
401key_missingKhông có header khoákhông
401key_malformedKhoá sai định dạngkhông
401key_conflictHai header mang hai khoá khác nhaukhông
401key_invalidKhoá không hợp lệkhông
401key_revokedKhoá đã thu hồikhông
401key_expiredKhoá đã hết hạnkhông
402no_creditsHết creditsau khi nạp
403account_bannedTài khoản bị khoákhông
405method_not_allowedChỉ nhận POSTkhông
413file_too_largeTệp quá 25 MBkhông
413image_too_largeẢnh vượt trần điểm ảnhkhông
429rate_limitedQuá nhiều ảnh đang xử lý
500internalLỗi phía chúng tôimột lần
502upstreamMáy chủ xử lý không phản hồi
503busyMáy chủ đang bận

Mọi phản hồi đều có X-Request-Id. Gửi kèm mã đó khi báo lỗi.

Ví dụ

import os, requests

r = requests.post(
    "https://hoanlab.com/api/v1/remove",
    headers={"Authorization": f"Bearer {os.environ['REMOVER_API_KEY']}"},
    files={"image": open("anh.jpg", "rb")},
    timeout=120,
)

if r.headers.get("Content-Type", "").startswith("image/"):
    open("anh-da-xoa.jpg", "wb").write(r.content)
else:
    d = r.json()
    print(d.get("action") or d.get("error"), d["message"], d["request_id"])

← Về công cụ · Điều khoản · Quyền riêng tư · [email protected]