Docs

الصور والمخططات

آخر تحديث: 2026-10-033 دقيقة قراءة

الأداتان تأخذان الملف بصيغة multipart/form-data.

تحسين الصور

POST /photo/enhance: النطاق tools:photo، مهمة. صورة واحدة لكل طلب.

أجزاء النموذج:

الجزءالوصف
imageالصورة: إلزامي؛ JPEG أو PNG أو WebP حتى 25 ميغابايت
maskلـ cleanup فقط: قناع PNG، والأبيض يحدد المنطقة المراد تغييرها
dataالخيارات سلسلة JSON واحدة: إلزامي

الخيارات في data:

الحقلالوصف
modeenhance: الإضاءة واللون والحدة؛ cleanup: إزالة الأشياء؛ staging: تأثيث غرفة فارغة. الافتراضي cleanup
promptإلزامي لـ cleanup وstaging (من 3 إلى 500 حرف): ما الذي يُزال أو كيف يُؤثث؛ اختياري لـ enhance
intensitylight، medium (افتراضي)، strong
roomTypeliving، bedroom، kitchen، bathroom، dining، office، outdoor
furnitureStyleلـ staging: modern، scandinavian، industrial، luxury، minimalist، coastal
autoMaskcleanup دون قناع خاص: إيجاد المنطقة تلقائيا
seedرقم لنتيجة قابلة للتكرار
negativePromptما يجب تجنبه، حتى 300 حرف
objectId، objectTypeعقارك الذي تنتمي إليه الصورة (property أو complex)
curl -X POST https://developers.grem.capital/api/v1/photo/enhance \
  -H "Authorization: Bearer gsk_live_xxx" \
  -F 'data={"mode":"cleanup","prompt":"أزل الكرسي والصناديق"}' \
  -F "[email protected]"

القناع مع enhance أو staging يُرفض: لا أثر له هناك، ولا يُخصم شيء. السعر يعتمد على الوضع. حالات الرفض: القناع خارج cleanup يعطي 422 مع code: MASK_NOT_SUPPORTED؛ ونوع ملف آخر أو ملف أكبر من 25 ميغابايت يعطي 422 مع code: JOB_CREATE_FAILED؛ ومفتاح غير معروف في data يعطي 400. ويحمل رد البدء sku وpriceMinor: ما يُخصم مقابل الاستدعاء (يغيب إذا غطته حصة الخطة).

202 مع jobId. المهمة المنتهية (GET /photo/enhance/jobs/{id}):

الحقلالوصف
resultsنسخ النتيجة
results[].variantرقم النسخة
results[].urlعنوان الصورة
results[].width، results[].heightالحجم
metadata.errorفي المهمة الفاشلة: السبب بنص عام

ملف النسخة: GET /artifacts/v1/ai/photo-enhancement/jobs/{jobId}/download/{variant}. الأحداث: photo.completed / photo.failed.

تنظيف المخطط

POST /floorplan/create: النطاق tools:floorplan. صورة المخطط أو مسحه الضوئي تتحول إلى مخطط نظيف بأسماء الغرف ومساحاتها. تتم المعالجة فورا: رد 202 يحمل النتيجة.

الجزءالوصف
fileصورة المخطط (JPEG، PNG، WebP، HEIC؛ حتى 20 ميغابايت): إلزامي؛ ويُقبل الاسم image أيضا
objectIdإرفاق النتيجة بعقارك
objectTypeproperty أو rental أو complex
curl -X POST https://developers.grem.capital/api/v1/floorplan/create \
  -H "Authorization: Bearer gsk_live_xxx" \
  -F "[email protected]"

الرد:

الحقلالوصف
jobIdمعرّف المهمة
statusdone: قُبلت الأسماء تلقائيا؛ review: النتيجة جاهزة ويُستحسن مراجعة الأسماء؛ rejected: الصورة ليست مخططا؛ failed: عطل
statecompleted لـ done وreview، وfailed لـ rejected وfailed
roomsالغرف: label وarea (م²، إن كانت مكتوبة) وstable (قُرئت التسمية بالشكل نفسه في كل مرور) وplacement (موضع التسمية على المخطط النظيف)
totalAreaالمساحة الإجمالية، م²، إن كانت المساحات مكتوبة على المخطط
cleanedFileIdصورة المخطط النظيف
sourceFileIdالمخطط الذي رفعته

التقرير: GET /artifacts/v1/ai/floor-plan/jobs/{id}/report.pdf. جلب النتيجة مجددا: GET /floorplan/create/jobs/{id}. الأحداث: floorplan.completed / floorplan.failed. إذا لم تكن الصورة مخططا فلا يُخصم شيء.

مقالات ذات صلة

هل كانت هذه المقالة مفيدة؟