أرسل صورة بورتريه؛ وتزيل الـ API خلفيتها وتستبدلها بلون خلفية قياسي لصور الهوية، وتقصّها وفق المواصفة المطلوبة.
المصادقة والطلب
X-Api-Key: YOUR_API_KEY. يمكنك إنشاء المفاتيح وإدارتها من صفحة حسابك.
| المعامل | النوع | مطلوب | الوصف |
|---|---|---|---|
image_file
|
file | مطلوب | صورة بورتريه — بوضعية أمامية وإضاءة متساوية |
spec
|
string | مطلوب | المواصفة: 1inch / 2inch / us_passport / cn_visa … |
bg_color
|
string | اختياري | الخلفية: بيضاء (افتراضي) / زرقاء / حمراء |
نماذج التعليمات البرمجية
اختر لغة وانسخ الكود — يعمل كما هو دون تعديل.1curl -X POST "https://api.pixmiller.com/v1/id-photo" \2 -H "X-Api-Key: YOUR_API_KEY" \3 -F "[email protected]" \4 -F "spec=1inch" \5 -F "bg_color=blue"
1import requests23resp = requests.post(4 "https://api.pixmiller.com/v1/id-photo",5 headers={"X-Api-Key": "YOUR_API_KEY"},6 files={"image_file": open("face.jpg", "rb")},7 data={"spec": "1inch", "bg_color": "blue"},8)9print(resp.json()["url"])
1import fs from "node:fs";23const form = new FormData();4form.append("image_file", new Blob([fs.readFileSync("face.jpg")]), "face.jpg");5form.append("spec", "1inch");6form.append("bg_color", "blue");7const resp = await fetch("https://api.pixmiller.com/v1/id-photo", {8 method: "POST",9 headers: { "X-Api-Key": "YOUR_API_KEY" },10 body: form,11});12console.log((await resp.json()).url);
الاستجابة
1{2 "url": "https://cdn.pixmiller.com/result/8Kd2pQ.png"3}
url
رابط مؤقت للصورة المعالجة (يتم حذف الصورة تلقائيًا بعد 3 أيام).
الأخطاء
تُرجع الأخطاء رمز الحالة المطابق ونصًا بصيغة JSON على الشكل التالي {"errors":{"code":"…","message":"…"}}.
validation error
الحقل image_file مفقود أو غير صالح، أو حجم الملف كبير جدًا، أو مصادر الصورة متعارضة.
authentication_failed
ترويسة X-Api-Key مفقودة أو غير صالحة.
not_enough_credit
تم طلب size=full لكن لا يوجد رصيد كافٍ من أرصدة الجودة العالية في الحساب.
invalid_image
تعذّرت معالجة الصورة — إما لصغر حجمها، أو لعدم دعم صيغتها، أو لفشل فك ترميزها.
throttled
تم تجاوز حد معدل الطلبات. يُرجى التمهّل وإعادة المحاولة بعد المدة المحددة في ترويسة Retry-After.