بازگشت به فهرست ATP →
اسناد پرونده

دانلود سند مبدأ

GET /api/v1/invention-cases/{invention_case_id}/source-documents/{source_document_id}/download/ مشاهده در Swagger

ATP - دانلود سند مبدأ (GET /api/v1/invention-cases/{invention_case_id}/source-documents/{source_document_id}/download/)

Endpoint

GET /api/v1/invention-cases/{invention_case_id}/source-documents/{source_document_id}/download/

هدف آزمون

دانلود یا پیش‌نمایش فایل خام source document ذخیره‌شده در S3.

شرایط آزمون

  • سرویس core-api در حال اجرا باشد
  • هدر Authorization با access token معتبر

فرآیند آزمون

  1. آپلود source document و انتظار upload_status=stored
  2. GET download با access token
  3. بررسی Content-Type و بدنه فایل
  4. برای PDF/image: inline preview؛ سایر انواع: attachment

معرفی ویژگی

این endpoint عملیات «دانلود سند مبدأ» را در API Patent Genie انجام می‌دهد.

  • upload_status: باید stored باشد
  • preview: content-typeهای قابل پیش‌نمایش بدون Content-Disposition attachment
  • filename: از original_filename

سناریوی آزمون

سناریو 1: مسیر موفق

  1. ارسال GET /api/v1/invention-cases/{invention_case_id}/source-documents/{source_document_id}/download/
  2. دریافت پاسخ موفق
  3. بررسی ساختار پاسخ

سناریو 2: خطا - درخواست نامعتبر

  1. ارسال درخواست با داده یا شناسه نامعتبر
  2. دریافت کد خطای 4xx
  3. بررسی پیام خطای استاندارد API

سناریو 3: خطا — بدون احراز هویت

  1. ارسال درخواست بدون هدر Authorization
  2. دریافت کد 401
  3. بررسی عدم برگرداندن داده محافظت‌شده

سناریو 4: خطا — منبع یافت نشد

  1. استفاده از UUID نامعتبر یا متعلق به کاربر دیگر
  2. دریافت کد 404
  3. بررسی پیام خطای استاندارد API

قالب API

مولفه نوع نوع داده اجباری توضیحات
invention_case_id Path uuid بله شناسه پرونده اختراع
source_document_id Path uuid بله شناسه سند مبدأ

Swagger

get:
  summary: دانلود سند مبدأ
  responses:
    200:
      description: عملیات موفق
    401:
      description: احراز هویت نامعتبر یا ناقص

نمونه ورودی

curl -X GET "http://localhost:8000/api/v1/invention-cases/{invention_case_id}/source-documents/{source_document_id}/download/" \
  -H "Authorization: Bearer <access>" \
  -H "Content-Type: application/json"

نمونه خروجی

{
  "success": true,
  "data": {}
}

Status Codes

  • 200: فایل برگردانده شد
  • 401: احراز هویت نامعتبر
  • 404: سند یافت نشد یا فایل در دسترس نیست

نتیجه مورد انتظار

در صورت موفقیت، پاسخ JSON استاندارد با کد وضعیت مناسب برای GET برگردانده می‌شود.

روال صحت‌سنجی

  1. بررسی کد وضعیت HTTP
  2. بررسی فیلد success در بدنه
  3. بررسی عدم افشای داده حساس

توضیحات

  • فقط فایل خام آپلودشده؛ متن استخراج‌شده endpoint جدا دارد
  • اگر فایل در storage موجود نباشد 404