طلب POST واحد لكل أداة، وكلها مولَّدة من المانيفست نفسه الذي تعمل عليه أدوات التطبيق. وتُشتق هذه الصفحة من الفهرس الحي: فالأسماء والمعاملات والأعلام لا يمكن أن تنحرف عن الخادم.
عنوان الأساس نفسه، والمصادقة نفسها، والمظروف نفسه — لكل أداة.
كل أداة طلب POST واحد تحت عنوان أساس الواجهة. والمصادقة ومظروف الاستجابة موثَّقان في المرجع؛ وتضيف هذه الصفحة ما يختلف من أداة لأخرى: الحقول والسقوف والاستجابة.
POST https://haiyz.net/api/enterprise/v1/gis/buffer
X-Api-Key: haiyz_pk_live_xxxxxxxxxxxx
X-Api-Secret: haiyz_sk_live_xxxxxxxxxxxxxxxxxxxxxxxx
X-Api-User: [email protected]شكلان: ملف مخزَّن، أو ناتج JSON مباشر.
الأدوات المنتجة للملفات تخزّن الناتج وتجيب بالمظروف القياسي: مفتاح التخزين، واسم ملف الناتج المقترح، ومفتاح مدخلك، وحقول ناتج كل أداة، وكتلة استخدام. وتضمّن أدوات المتجهات عدد المعالم ونظام إحداثيات الناتج ونوع الهندسة:
keyoutputFilenameinputKeyusagefeatureCountcrsgeometryTypeتُجلب البايتات على حدة بالمفتاح المعاد (نقطة التنزيل في التطبيق، أو عنوان أثر التشغيل في واجهة نموذج النقاط) — وContent-Disposition يحمل اسم الملف.
أدوات JSON (تحويل الإحداثيات، والقياس، والنقطة في المضلع…) تعيد ناتجها مباشرة في data — دون ملف مخزَّن ما لم تنص الأداة على غير ذلك.
عن X-Output-Filename وX-CRS
حواجز أمان تسبق أي حد خاص بالأداة.
3 tools
POST /validate-convertتحقق من صحة وحوّل ملفات Shapefile وGeoJSON وKML.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
sourceCrsrepairedCountbboxPOST /transform-crs/jsonحوّل الإحداثيات بين أنظمة الإسناد المختلفة.
| Field | Type | Required | Details |
|---|---|---|---|
source_crs | string | yes | |
target_crs | string | yes | |
points | array | yes | an array of { x, y } coordinate objects |
POST /transform-crs/csv| Field | Type | Required | Details |
|---|---|---|---|
file | file | yes | |
source_crs | string | yes | |
target_crs | string | yes |
transformedPointsمسار JSON غير محتسب؛ ومسار CSV محتسب. ويعرض الفهرس toolKey محتسبًا لأن مسار الملف كذلك.
POST /convert-coordinatesحوّل خط الطول/العرض بين الدرجات العشرية (DD) والدرجات-الدقائق-الثواني (DMS) والدرجات-الدقائق العشرية (DDM).
| Field | Type | Required | Details |
|---|---|---|---|
from_format | string | yes | dd | dms | ddm |
points | array | yes | مصفوفة كائنات { lon, lat } |
fromFormatresults1 tools
POST /extract-exifاستخرج بيانات GPS من صور JPEG وأنشئ خريطة GeoJSON.
| Field | Type | Required | Details |
|---|---|---|---|
files | file | yes | كرر الحقل مرة لكل ملف |
imagesinputKeysgeotaggedCounttotalCountgeojsonOutput11 tools
POST /line-to-polygonحوّل سلسلة إحداثيات إلى مضلّع مغلق واحسب المساحة الجيوديسية والمحيط وإحصائيات الشكل.
| Field | Type | Required | Details |
|---|---|---|---|
coordinates | array | yes | مصفوفة أزواج [lon, lat] — ثلاثة على الأقل |
POST /line-to-polygon/file| Field | Type | Required | Details |
|---|---|---|---|
file | file | yes |
keyinputKeystatsusagePOST /simplifyقلّل عدد رؤوس الملف الجغرافي باستخدام خوارزمية دوغلاس–بيوكر للتبسيط.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
toleranceالتفاوت (بالدرجات) | number | optional | min 0.000001 · default 0.001 |
preserve_topologyالحفاظ على الطوبولوجيا (تجنّب التقاطعات الذاتية) | boolean | optional | default true |
verticesBeforeverticesAfterPOST /convex-hullاحسب أصغر مضلّع محدّب يحيط بجميع الأشكال الهندسية في ملف جغرافي.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
inputFeatureCounthullVerticesPOST /centroidsاستبدل كل معلم بنقطة مركزه — حوّل المضلّعات أو الخطوط إلى طبقة نقاط.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
methodموضع النقطة | string | optional | centroid | inside · default centroid |
inputGeometryTypePOST /bufferأنشئ نطاقات عازلة حول النقاط أو الخطوط أو المضلّعات — بمسافة ثابتة بالأمتار، محسوبة في نطاق UTM المحلي.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
distance_mمسافة النطاق العازل (بالأمتار) | number | optional | min 1 · default 100 |
dissolveدمج النطاقات المتداخلة في شكل واحد | boolean | optional | default false |
cap_styleشكل أطراف النطاق العازل | string | optional | round | flat | square · default round |
dissolveddistanceMيجوز أن يكون distance_m سالبًا لتقليص المضلعات؛ والصفر مرفوض.
POST /dissolveادمج المعالم التي تشترك في قيمة عمود واحد في شكل هندسي واحد، مع إمكانية حساب العدد أو المجموع أو المتوسط أو الأدنى أو الأعلى لحقل آخر.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
byالتجميع حسب عمود | string | optional | اسم عمود يُقرأ من `file` |
aggالدالة التجميعية | string | optional | count | sum | mean | min | max · default count |
agg_fieldعمود التجميع | string | optional | اسم عمود يُقرأ من `file` |
inputFeatureCountgroupsgroupFieldPOST /clipاقتطع الطبقة وفق طبقة حدود، مع الإبقاء على الأجزاء الواقعة داخلها فقط.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
maskحدود القص (مضلّعات) | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
inputFeatureCountdroppedCountPOST /explodeفكّك المعالم المركّبة إلى معلم مستقل لكل جزء، بحيث يقع كل مضلّع أو خط في صف خاص به.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
inputFeatureCountmultipartCountpartsCreatedPOST /repairأصلح الأشكال الهندسية غير الصالحة — التقاطعات الذاتية والحلقات غير المغلقة والأشكال الفارغة — ليُفتح الملف دون أخطاء في أي نظام معلومات جغرافية.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
inputFeatureCountinvalidBeforeinvalidAfterdroppedCountPOST /concave-hullاحسب مُغلَّفًا يتبع الشكل الحقيقي لسحابة النقاط بدقة أعلى من المُغلَّف المحدّب، بضبط نسبة الإحكام.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
ratioدرجة الإحكام | number | optional | min 0.05 · max 1 · default 0.3 |
inputFeatureCountratiohullVerticesPOST /gridأنشئ شبكة منتظمة من الخلايا المربّعة تغطي نطاق الطبقة، بحجم خلية تحدّده بالأمتار.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
cell_size_mحجم الخلية (بالأمتار) | number | optional | min 1 · default 1000 |
clip_to_extentقصّ الشبكة على حدود البيانات | boolean | optional | default false |
inputFeatureCountrowscolscellSizeM3 tools
POST /distance-bearingاحسب المسافة الجيوديسية والاتجاه الأمامي/الخلفي بين سلسلة من النقاط.
| Field | Type | Required | Details |
|---|---|---|---|
points | array | yes | مصفوفة كائنات { lon, lat } — اثنان على الأقل |
segmentstotal_distance_mtotal_distance_kmstraight_distance_mstraight_distance_kmis_closedpoint_countsegment_countPOST /point-in-polygonتحقق مما إذا كانت النقاط تقع داخل المضلّع أو خارجه أو على حدوده، مع المسافة الجيوديسية إلى أقرب حافة.
| Field | Type | Required | Details |
|---|---|---|---|
polygon | array | yes | مصفوفة أزواج [lon, lat] — ثلاثة على الأقل |
points | array | yes | مصفوفة كائنات { lon, lat } |
resultsinside_countoutside_countboundary_countpoint_countPOST /area-lengthاحسب المساحة والمحيط أو الطول لكل معلم حسابًا جيوديسيًا — بدقة على المجسم الأرضي لا بتقريب مستوٍ.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
inputFeatureCounttotalAreaM2totalLengthMmeasuredAreasmeasuredLengths2 tools
POST /mergeادمج من 2 إلى 5 ملفات جغرافية (shapefile أو GeoJSON أو KML) في طبقة واحدة بنظام إحداثيات موحّد — مع وسم كل معلم بملفه المصدر.
| Field | Type | Required | Details |
|---|---|---|---|
filesالملفات المراد دمجها (2–5) | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) · 2–5 files |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
fileCountPOST /spatial-joinاربط خصائص طبقة بأخرى وفق العلاقة المكانية — التقاطع أو الاحتواء الداخلي أو الاحتواء أو العبور أو التماس أو التداخل.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف المُدخَل | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
joinالطبقة المصدر للربط | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
predicateالعلاقة المكانية | string | optional | intersects | within | contains | crosses | touches | overlaps · default intersects |
howالإبقاء على المعالم غير المطابِقة | string | optional | inner | left · default inner |
inputFeatureCountjoinFeatureCountmatchedCountpredicate3 tools
POST /raster-inspectارفع ملف GeoTIFF/DEM لمعرفة نظام إحداثياته وحدوده ودقته وإحصائيات كل نطاق (band)، مع معاينة سريعة.
| Field | Type | Required | Details |
|---|---|---|---|
file | file | yes |
inputKeypreviewKeypreviewPngB64crswidthheightbandCountresolutionboundsbandsusagePOST /cog-optimizeارفع ملف GeoTIFF للتحقق مما إذا كان بصيغة Cloud-Optimized GeoTIFF (مقسّم ومزوّد بمستويات مصغّرة) وتنزيل نسخة محسّنة منه.
| Field | Type | Required | Details |
|---|---|---|---|
fileالملف الشبكي (GeoTIFF) | file | yes | GeoTIFF (بامتداد .tif أو .tiff أو .geotiff) |
wasAlreadyCogissueswidthheightbandCountoriginalTiledoriginalOverviewCountoriginalCompressionoptimizedOverviewCountoptimizedCompressionPOST /zonal-statsلخّص قيم الراستر داخل كل منطقة مضلّعة — المتوسط والأدنى والأعلى والمجموع والعدد لكل معلم.
| Field | Type | Required | Details |
|---|---|---|---|
fileمضلّعات المناطق | file | yes | بيانات جغرافية متجهية (انظر قائمة الامتدادات المقبولة أعلاه) |
rasterالملف الشبكي (GeoTIFF) | file | yes | GeoTIFF (بامتداد .tif أو .tiff أو .geotiff) |
target_formatصيغة الإخراج | string | yes | geojson | shp | kml | gml | gpkg | fgb | kmz | parquet |
bandالنطاق الشبكي | number | optional | min 1 · default 1 |
statsالإحصاءات | string | yes |
inputFeatureCountzoneszonesWithDatabandstats5 tools
POST /remove-backgroundأزل خلفية الصورة تلقائيًا، مباشرة من متصفحك.
| Field | Type | Required | Details |
|---|---|---|---|
fileالصورة | file | yes | PNG وJPEG وWebP وBMP |
POST /enhance-qualityحسّن الصورة وأعد ترميزها لنتيجة أوضح — أعضاء Plus يحصلون على الدقة الكاملة وجودة أعلى وتكبير اختياري 2×.
| Field | Type | Required | Details |
|---|---|---|---|
fileالصورة | file | yes | PNG وJPEG وWebP وBMP وTIFF وGIF |
upscaleتكبير 2× | boolean | optional | default false |
POST /convert-formatحوّل صورة بين PNG وJPG وWebP وBMP وTIFF وGIF.
| Field | Type | Required | Details |
|---|---|---|---|
fileالصورة | file | yes | PNG وJPEG وWebP وBMP وTIFF وGIF |
target_formatالصيغة المستهدفة | string | optional | png | jpeg | webp | bmp | tiff | gif · default png |
POST /image-watermarkأضف علامة مائية نصية أو شعارًا إلى صورة أو تصميم.
| Field | Type | Required | Details |
|---|---|---|---|
fileالصورة | file | yes | PNG وJPEG وWebP وBMP وTIFF وGIF |
wm_modeنوع العلامة المائية | string | optional | text | image · default text |
textنص العلامة المائية | string | yes | |
logoالصورة المراد ختمها | file | yes | PNG وJPEG وWebP وBMP وTIFF وGIF |
positionالموضع | string | optional | diagonal | center | top-left | top-right | bottom-left | bottom-right · default bottom-right |
opacityالشفافية | number | optional | min 0.05 · max 1 · default 0.4 |
قدّم واحدًا فقط من text أو logo — والمحرك يرفض كليهما معًا أو غيابهما معًا.
POST /merge-imagesاجمع عدة صور في صورة واحدة — عموديًا أو أفقيًا أو كشبكة.
| Field | Type | Required | Details |
|---|---|---|---|
filesالصور | file | yes | PNG وJPEG وWebP وBMP وTIFF وGIF · 2–12 files |
layoutالتخطيط | string | optional | vertical | horizontal | grid · default vertical |
fileCountwidthheight11 tools
POST /ocrاستخرج النص من صورة أو مستند ممسوح ضوئيًا — يدعم العربية والإنجليزية أو كليهما معًا.
| Field | Type | Required | Details |
|---|---|---|---|
file | file | yes | |
lang | string | optional | eng | ara | eng+ara · default eng |
keyinputKeytextlangcharCountusagePOST /pdf-to-wordحوّل نص وتنسيق ملف PDF إلى مستند Word قابل للتحرير.
| Field | Type | Required | Details |
|---|---|---|---|
fileملف PDF | file | yes |
POST /document-signضع توقيعك على ملف PDF — ارسمه أو ارفعه أو استخدم توقيعاً محفوظاً.
| Field | Type | Required | Details |
|---|---|---|---|
file | file | yes | |
signature | file | yes | PNG only |
placements | json-string | yes | سلسلة JSON: مصفوفة صناديق { page, x, y, w, h } بكسور الصفحة (0–1) |
هذه الأداة تطبع صورة توقيع في الصفحات — وليست توقيعًا رقميًا موثَّقًا.
POST /merge-pdfادمج حتى 20 ملف PDF في مستند واحد بالترتيب الذي تختاره.
| Field | Type | Required | Details |
|---|---|---|---|
filesملفات PDF (2–20) | file | yes | PDF · 2–20 files |
fileCountpageCountPOST /split-pdfاستخرج صفحات أو نطاقات صفحات من ملف PDF — جزءًا واحدًا أو عدة أجزاء.
| Field | Type | Required | Details |
|---|---|---|---|
fileملف PDF | file | yes | |
rangesالصفحات المطلوب استخراجها | string | yes |
partCountالنطاق الواحد يعيد PDF؛ وعدة نطاقات تعيد ZIP (والاسم الحقيقي في outputFilename).
POST /compress-pdfقلّل حجم ملف PDF عبر إعادة ترميز الصور وتنظيف بنية الملف.
| Field | Type | Required | Details |
|---|---|---|---|
fileملف PDF | file | yes | |
qualityالجودة | string | optional | screen | ebook | print · default ebook |
pageCountoriginalBytescompressedBytesalreadyOptimizedPOST /pdf-to-imagesحوّل كل صفحة من ملف PDF إلى صورة PNG عالية الجودة.
| Field | Type | Required | Details |
|---|---|---|---|
fileملف PDF | file | yes | |
dpiالدقة (DPI) | string | optional | 72 | 150 | 300 · default 150 |
pageCountتعيد دائمًا ملف ZIP من صور الصفحات.
POST /pdf-watermarkأضف نصًا أو شعارًا على كل صفحة من ملف PDF.
| Field | Type | Required | Details |
|---|---|---|---|
fileملف PDF | file | yes | |
wm_modeنوع العلامة المائية | string | optional | text | image · default text |
textنص العلامة المائية | string | yes | |
logoالصورة المراد ختمها | file | yes | PNG وJPEG وWebP وBMP وTIFF وGIF |
positionالموضع | string | optional | diagonal | center | top-left | top-right | bottom-left | bottom-right · default diagonal |
opacityالشفافية | number | optional | min 0.05 · max 1 · default 0.15 |
pageCountقدّم واحدًا فقط من text أو logo — والمحرك يرفض كليهما معًا أو غيابهما معًا.
POST /images-to-pdfحوّل الصور والمستندات الممسوحة إلى ملف PDF واحد، صورة في كل صفحة.
| Field | Type | Required | Details |
|---|---|---|---|
filesالصور | file | yes | PNG وJPEG وWebP وBMP وTIFF وGIF · 1–20 files |
page_modeحجم الصفحة | string | optional | a4 | fit · default a4 |
pageCountfileCountPOST /fill-pdfاكتب في حقول نموذج PDF نفسها ونزّل المستند المعبّأ.
| Field | Type | Required | Details |
|---|---|---|---|
file | file | yes | |
values | json-string | yes | سلسلة JSON: كائن من اسم حقل AcroForm ← القيمة (حتى حد قيم النموذج) |
flatten | string | optional | true | false · default false |
fieldCountfilledCountflattenedPOST /rotate-pagesصحّح اتجاه الصفحات واحذف غير المرغوب منها مباشرة على المصغّرات.
| Field | Type | Required | Details |
|---|---|---|---|
file | file | yes | |
operations | json-string | yes | سلسلة JSON: { "rotations": { "<page>": 90|180|270 }, "delete": [pages] } — الصفحات تبدأ من 0؛ وعملية واحدة على الأقل |
pageCountrotatedCountdeletedCountفي المانيفست، لا في الفهرس.
أداتان بلا صفحة مستقلة ولا تظهران في الفهرس المتصفَّح — تُستدعيان من داخل أسطح أخرى، وعبر الواجهة. وهما مقيّدتان ومحتسبتان كسائر الأدوات.
POST /workspace-exportتحويل الطبقات الظاهرة في مساحة العمل إلى Shapefile أو KML أو CSV.
| Field | Type | Required | Details |
|---|---|---|---|
file | file | yes | طبقة مساحة العمل بصيغة GeoJSON |
target_format | string | yes | shp | kml | csv | geojson |
base_name | string | optional |
featureCounttruncatedFieldsPOST /map-exportإنشاء لوحة خريطة جاهزة للطباعة تتضمن عنواناً ومفتاحاً وسهم الشمال.
| Field | Type | Required | Details |
|---|---|---|---|
image | file | yes | كرر الحقل مرة لكل ملفلقطة PNG واحدة لكل كتلة خريطة، مكررة |
logo | file | optional | |
spec | json-string | yes | سلسلة JSON تصف الورقة: الصفحة (a4|a3|letter) والاتجاه والعنوان وعناصر مفتاح الخريطة والإسناد ووسم نظام الإحداثيات وغيرها |