بازگشت به فهرست ATP →
قابلیت‌ها و تعاریف گردش‌کار

تعاریف گردش‌کار

GET /api/v1/workflow-definitions/ مشاهده در Swagger

ATP - تعاریف گردش‌کار (GET /api/v1/workflow-definitions/)

Endpoint

GET /api/v1/workflow-definitions/

هدف آزمون

لیست workflow definitionهای فعال با نسخه published و تعداد step.

شرایط آزمون

  • کاربر احراز هویت‌شده با نقش admin (is_staff)

فرآیند آزمون

  1. ارسال درخواست GET به /api/v1/workflow-definitions/
  2. دریافت پاسخ HTTP
  3. بررسی کد وضعیت و بدنه JSON

معرفی ویژگی

این endpoint عملیات «تعاریف گردش‌کار» را در API Patent Genie انجام می‌دهد.

  • ورودی معتبر: اعتبارسنجی در مرز API
  • پاسخ استاندارد: قالب JSON یکسان با سایر endpointها
  • کنترل دسترسی: مطابق policy ماژول مربوطه

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

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

  1. ارسال GET /api/v1/workflow-definitions/
  2. دریافت پاسخ موفق
  3. بررسی ساختار پاسخ

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

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

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

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

سناریو 4: خطا — توکن منقضی

  1. استفاده از access token منقضی‌شده
  2. دریافت کد 401
  3. تازه‌سازی توکن با endpoint refresh

قالب API

مولفه نوع نوع داده اجباری توضیحات
بدون پارامتر ورودی

Swagger

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

نمونه ورودی

curl -X GET "http://localhost:8000/api/v1/workflow-definitions/" \
  -H "Authorization: Bearer <access>" \
  -H "Content-Type: application/json"

نمونه خروجی

{
  "success": true,
  "data": {
    "items": [
      {
        "key": "patent_drafting",
        "name": "Patent Drafting",
        "is_active": true,
        "published_version": 1,
        "step_count": 6
      }
    ]
  }
}

Status Codes

  • 200: عملیات موفق
  • 401: احراز هویت نامعتبر یا ناقص

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

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

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

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

توضیحات

  • فقط IsAdminUser
  • مکمل GET invention-cases/{id}/workflow برای projection per-case