NueForm

واجهة برمجة الملفات

عرض وإدارة الملفات المرفوعة المرتبطة بنماذجك.

تتيح لك واجهة برمجة الملفات عرض الملفات المرفوعة المرتبطة بحسابك. يتم إنشاء الملفات عندما يُرسل المستجيبون أسئلة رفع الملفات أو عندما ترفع وسائط (صور، فيديوهات) في منشئ النماذج.

تستخدم جميع هياكل الاستجابة أسماء حقول بتنسيق snake_case.

عرض الملفات

GET/api/v1/files

يُرجع قائمة مُقسّمة لصفحات من الملفات المرفوعة للمستخدم المُصادَق عليه. يشمل كلاً من وسائط المنشئ المرفوعة (المملوكة للمستخدم) وملفات المستجيبين المرفوعة (المرتبطة بنماذج المستخدم).

معاملات الاستعلام

pageinteger

رقم الصفحة (افتراضي: 1)

per_pageinteger

النتائج لكل صفحة (افتراضي: 50)

حقول الاستجابة

idstring

معرّف الملف المرفوع الفريد

blob_urlstring

رابط عام للوصول إلى الملف

original_namestring

اسم الملف الأصلي كما رفعه المستخدم

uuid_namestring

اسم الملف المبني على UUID المستخدم في تخزين blob

sizeinteger

حجم الملف بالبايت

content_typestring

نوع MIME للملف (مثل: "image/png"، "application/pdf")

form_idstring or null

النموذج المرتبط بهذا الملف (لملفات المستجيبين)

user_idstring or null

المستخدم الذي رفع هذا الملف (لوسائط المنشئ). null لملفات المستجيبين.

created_atstring

طابع زمني للرفع بتنسيق ISO 8601

أنواع الملفات

تنقسم الملفات إلى فئتين بناءً على حقلي user_id و form_id:

الفئةuser_idform_idالوصف
وسائط المنشئمُعيَّنnull أو مُعيَّنصور أو فيديوهات أو مستندات رفعتها في منشئ النماذج (مثل: صور الأسئلة، الشعارات)
ملفات المستجيبينnullمُعيَّنملفات أرسلها المستجيبون عبر أسئلة رفع الملفات

حدود التخزين

يتم تتبع تخزين الملفات لكل حساب. يمكنك التحقق من استخدامك الحالي عبر واجهة برمجة المستخدم. تختلف حدود التخزين حسب مستوى الخطة. عند حذف نموذج، يتم تنظيف ملفات المستجيبين المرتبطة واسترداد مساحة التخزين بشكل غير متزامن.

الاستجابة

json
{
  "files": [
    {
      "id": "668a1b2c3d4e5f6a7b8c9d01",
      "blob_url": "https://abcdef.public.blob.vercel-storage.com/uploads/a1b2c3d4.pdf",
      "original_name": "project-proposal.pdf",
      "uuid_name": "a1b2c3d4.pdf",
      "size": 245760,
      "content_type": "application/pdf",
      "form_id": "665a1b2c3d4e5f6a7b8c9d0e",
      "user_id": null,
      "created_at": "2026-02-25T14:30:00.000Z"
    },
    {
      "id": "668a1b2c3d4e5f6a7b8c9d02",
      "blob_url": "https://abcdef.public.blob.vercel-storage.com/uploads/e5f6a7b8.png",
      "original_name": "hero-banner.png",
      "uuid_name": "e5f6a7b8.png",
      "size": 1048576,
      "content_type": "image/png",
      "form_id": null,
      "user_id": "665a0a1b2c3d4e5f6a7b8c9d",
      "created_at": "2026-02-20T10:15:00.000Z"
    }
  ],
  "total": 38,
  "page": 1,
  "per_page": 50
}

أمثلة على الكود

bash
curl -X GET "https://api.nueform.io/api/v1/files?page=1&per_page=20" \
  -H "Authorization: Bearer YOUR_API_KEY"

استجابات الأخطاء

استجابات الأخطاء القياسية التي تُرجعها نقطة النهاية هذه.

رموز الأخطاء

401Unauthorized

مفتاح API مفقود أو غير صالح

500Server Error

خطأ داخلي في الخادم

مثال على خطأ

json
{
  "error": "Unauthorized"
}
آخر تحديث: 6 أبريل 2026