From 766280fd454b5ad2e8407ca96c68fdc8fc0d8168 Mon Sep 17 00:00:00 2001 From: Noloquideus Date: Sat, 9 May 2026 14:53:44 +0300 Subject: [PATCH] feat: add docs --- src/presentation/routing/order.py | 13 +++++++++++-- src/presentation/schemas/order.py | 5 +++++ 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/src/presentation/routing/order.py b/src/presentation/routing/order.py index 012f528..c19ccfd 100644 --- a/src/presentation/routing/order.py +++ b/src/presentation/routing/order.py @@ -10,7 +10,7 @@ from src.application.domain.enums import OrderStatus from src.presentation.decorators import require_access_token, csrf_protect from src.presentation.dependencies.commands import get_create_order_command, get_create_payment_cloudkassir_command from src.presentation.dependencies.logger import get_logger -from src.presentation.schemas.order import CreateOrder,CreateOrderResponse,OrderPaymentResponse +from src.presentation.schemas.order import CreateOrder,CreateOrderResponse,ErrorResponse,OrderPaymentResponse from src.presentation.schemas.itpay_payment_models import ItpayPaymentData order_router = APIRouter(prefix='/order', tags=['orders']) @@ -20,7 +20,16 @@ order_router = APIRouter(prefix='/order', tags=['orders']) '/create', response_model=CreateOrderResponse, status_code=201, - responses={409: {'model': CreateOrderResponse}}, + responses={ + 400: {'model': ErrorResponse, 'description': 'Bad Request'}, + 401: {'model': ErrorResponse, 'description': 'Unauthorized'}, + 403: {'model': ErrorResponse, 'description': 'Forbidden'}, + 404: {'model': ErrorResponse, 'description': 'Not Found'}, + 409: {'model': CreateOrderResponse | ErrorResponse, 'description': 'Conflict'}, + 500: {'model': ErrorResponse, 'description': 'Internal Server Error'}, + 502: {'model': ErrorResponse, 'description': 'Bad Gateway'}, + 503: {'model': ErrorResponse, 'description': 'Service Unavailable'}, + }, ) #@csrf_protect() async def create_order( diff --git a/src/presentation/schemas/order.py b/src/presentation/schemas/order.py index f5406e4..3a877e6 100644 --- a/src/presentation/schemas/order.py +++ b/src/presentation/schemas/order.py @@ -38,3 +38,8 @@ class CreateOrderResponse(BaseModel): status_code: int order: OrderPaymentResponse + +class ErrorResponse(BaseModel): + detail: str + status_code: int +