الملفات والوسائط
ارفع الملفات وأدِرها من كود التطبيق. كل ملف يحصل على رابط عام دائم.
توفّر Proyecta Files API عبر SDK لإدارة الملفات برمجيًا من كود تطبيقك.
مرفقات المحادثة
Section titled “مرفقات المحادثة”يقبل حقل إدخال المحادثة الصور مباشرةً — الصق لقطة شاشة أو اسحب ملف صورة إلى حقل الإدخال. الصيغ المدعومة: PNG, JPEG, WebP, GIF, AVIF. الحجم الأقصى: 10 MB للصورة الواحدة.
مرفقات المحادثة جزء من الرسالة، وليست ضمن مكتبة ملفاتك. للتخزين الدائم، استخدم SDK.
Files API (SDK)
Section titled “Files API (SDK)”كل تطبيق Proyecta منشور يملك صلاحية الوصول إلى API لتخزين الملفات عبر Proyecta SDK. يدعم SDK عمليات الإدراج والجلب والرفع للملفات. تحصل الملفات المرفوعة على رابط عام دائم يمكنك الإشارة إليه من تطبيقك.
import Proyecta from '@proyecta-ai/sdk';
const proyecta = new Proyecta({ apiKey: process.env.PROYECTA_API_KEY });
// List files (supports limit and starting_after for pagination)const files = await proyecta.files.list();
// Fetch a single file by IDconst file = await proyecta.files.get('1234567890123456789');console.log(file.url); // permanent public URL
// Upload a file (two-step)// Step 1: create a placeholder and get a signed upload URLconst { id: fileId, upload_url } = await proyecta.files.create({ filename: 'avatar.png', mime_type: 'image/png',});
// Step 2: PUT the file bytes directly to the signed URLawait fetch(upload_url, { method: 'PUT', body: fileBytes, headers: { 'Content-Type': 'image/png' },});
// Step 3: finalize to get the permanent file recordconst uploaded = await proyecta.files.finalize({ fileId });console.log(uploaded.url); // permanent public URL, now populatedكل ملف يحمل البيانات التالية:
| الحقل | الوصف |
|---|---|
id | معرّف فريد (سلسلة snowflake رقمية) |
url | رابط عام دائم (يُعبَّأ بعد خطوة finalize) |
filename | اسم الملف الأصلي عند الرفع |
mime_type | image/jpeg، application/pdf، إلخ. |
size | الحجم بالبايت |
path | مسار المجلد الاختياري (مثلاً /images/blog) |
content_hash | SHA-256 لمحتوى الملف |
metadata | بيانات وصفية بصيغة مفتاح/قيمة حرّة |
created | طابع زمني ISO 8601 لتاريخ الإنشاء |
updated | طابع زمني ISO 8601 لآخر تحديث |
كيف تُرفع الملفات إلى تطبيقي؟
Section titled “كيف تُرفع الملفات إلى تطبيقي؟”يتولى AI builder معالجة رفع الملفات. اطلب من الذكاء الاصطناعي بناء تدفق الرفع نيابةً عنك:
"دع المستخدمين يرفعون صورة شخصية وخزّنها في Proyecta Files""أضف معرضًا للصور يتيح للمستخدمين المسجّلين رفع صورهم وعرضها""دعني أرفق فواتير PDF إلى الطلبات"
يقوم الذكاء الاصطناعي بربط عملية الرفع في كود تطبيقك باستخدام API الرفع ذي الخطوتين في SDK، ويُشير إلى الرابط العام المُعاد. يمكنك أيضًا استدعاء files.create() / files.finalize() مباشرةً من كود تطبيقك.
الأسئلة الشائعة
Section titled “الأسئلة الشائعة”هل روابط الملفات عامة؟
نعم. أي ملف تُعيده Files API يمتلك رابطًا عامًا دائمًا. لا ترفع أي شيء لا تريد الكشف عنه.
ما الحجم الأقصى للملف؟
تعتمد حدود الملف الواحد على خطتك. مرفقات المحادثة محدودة بـ 10 MB للصورة الواحدة.
هل يمكنني تغيير حجم الصور أو اقتصاصها عبر الرابط؟
تحويلات الصور الفورية (تغيير الحجم، الاقتصاص، تحويل الصيغة) مُدرجة في خارطة الطريق.
قريبًا
Section titled “قريبًا”- تحويلات الصور عبر معاملات URL (تغيير الحجم، الاقتصاص، تحويل الصيغة)
- تنظيم المجلدات — إنشاء مسارات المجلدات وإدارتها من اللوحة
- “إضافة إلى المحادثة” من صف الملف، حتى تتمكن من إدراج أصول المكتبة في محادثة الذكاء الاصطناعي