نمونه cURL برای تست مستقیم
# روش سینکرون پیشفرض (خروجی تمیز برای Postman):
# فقط نتیجه نهایی data میآید، و برای جلوگیری از timeout فقط heartbeat ارسال میشود
curl -N -X POST "/api/face-match/sync" \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "image=@/path/to/photo.jpg" \
-F "video=@/path/to/video.mp4"
# خروجی نمونه:
: keep-alive
data: {"status":"done","success":true,"similarity":68,"match":true,...}# روش سینکرون با جزئیات مرحلهای (Verbose):
curl -N -X POST "/api/face-match/sync?verbose=1" \
-H "Authorization: Bearer YOUR_API_KEY" \
-F "image=@/path/to/photo.jpg" \
-F "video=@/path/to/video.mp4"
# خروجی نمونه:
data: {"status":"starting",...}
data: {"status":"processing","elapsed":2,...}
data: {"status":"done",...}# روش آسنکرون (برای aحالت پیچیده):
# مرحله ۱: ارسال فایلها
curl -X POST "/api/upload" \
-H "Authorization: Bearer sk_test_1771534019653_31kf92q2v67" \
-F "image=@/path/to/photo.jpg" \
-F "video=@/path/to/video.mp4"
# خروجی: {"success":true,"jobId":"job_xxx"}# مرحله ۲: دریافت نتیجه
curl "/api/face-match/status?jobId=job_xxx"
✅ حالت پیشفرض sync: خروجی نهایی تمیزتر است و پیامهای مرحلهای فقط در ?verbose=1 فعال میشود.
💡 استفاده از -N در cURL باعث میشود SSE را لحظهای ببینید و Postman/gateway هم timeout نشود.
🔐 اعتبارنامهها
عکس مرجع
ویدیو