Files
Fulfillment-Backend/test/test.json
2024-03-31 07:36:35 +03:00

1241 lines
29 KiB
JSON

{
"openapi": "3.1.0",
"info": {
"title": "FastAPI",
"version": "0.1.0"
},
"paths": {
"/auth/login": {
"post": {
"tags": [
"auth"
],
"summary": "Login",
"operationId": "login_auth_login_post",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthLoginRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/AuthLoginResponse"
}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/deal/create": {
"post": {
"tags": [
"deal"
],
"summary": "Create",
"operationId": "create_deal_create_post",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DealCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
},
"security": [
{
"HTTPBearer": []
}
]
}
},
"/deal/quickCreate": {
"post": {
"tags": [
"deal"
],
"summary": "Quick Create",
"operationId": "quick_create_deal_quickCreate_post",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DealQuickCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DealQuickCreateResponse"
}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
},
"security": [
{
"HTTPBearer": []
}
]
}
},
"/deal/changeStatus": {
"post": {
"tags": [
"deal"
],
"summary": "Change Status",
"operationId": "change_status_deal_changeStatus_post",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DealChangeStatusRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DealChangeStatusResponse"
}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
},
"security": [
{
"HTTPBearer": []
}
]
}
},
"/deal/summaries": {
"get": {
"tags": [
"deal"
],
"summary": "Get Summary",
"operationId": "getDealSummaries",
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DealSummaryResponse"
}
}
}
}
}
}
},
"/deal/services/add": {
"post": {
"tags": [
"deal"
],
"summary": "Services Add",
"operationId": "services_add_deal_services_add_post",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DealAddServicesRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DealAddServicesResponse"
}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/client/search": {
"get": {
"tags": [
"client"
],
"summary": "Search Clients",
"operationId": "search_clients",
"parameters": [
{
"name": "name",
"in": "query",
"required": true,
"schema": {
"type": "string",
"title": "Name"
}
}
],
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/client/update-details": {
"post": {
"tags": [
"client"
],
"summary": "Update Client Details",
"operationId": "update_client_details_client_update_details_post",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ClientUpdateDetailsRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
},
"security": [
{
"HTTPBearer": []
}
]
}
},
"/client/get-all": {
"get": {
"tags": [
"client"
],
"summary": "Get All Clients",
"operationId": "get_all_clients",
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ClientGetAllResponse"
}
}
}
}
}
}
},
"/service/get-all": {
"get": {
"tags": [
"service"
],
"summary": "Get All",
"operationId": "get_all_services",
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceGetAllResponse"
}
}
}
}
}
}
},
"/service/create": {
"post": {
"tags": [
"service"
],
"summary": "Create",
"operationId": "create_service",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceCreateResponse"
}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/service/categories/get-all": {
"get": {
"tags": [
"service"
],
"summary": "Get All Categories",
"operationId": "get_all_service_categories",
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceGetAllCategoriesResponse"
}
}
}
}
}
}
},
"/service/categories/create": {
"post": {
"tags": [
"service"
],
"summary": "Create Category",
"operationId": "create_service_category",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceCreateCategoryRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ServiceCreateCategoryResponse"
}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/product/create": {
"post": {
"tags": [
"product"
],
"summary": "Create Product",
"operationId": "create_product",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProductCreateRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProductCreateResponse"
}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
},
"/product/get": {
"get": {
"tags": [
"product"
],
"summary": "Get Product",
"operationId": "get_products_by_client_id",
"parameters": [
{
"name": "client_id",
"in": "query",
"required": true,
"schema": {
"type": "integer",
"title": "Client Id"
}
},
{
"name": "page",
"in": "query",
"required": true,
"schema": {
"type": "integer",
"title": "Page"
}
},
{
"name": "items_per_page",
"in": "query",
"required": true,
"schema": {
"type": "integer",
"title": "Items Per Page"
}
}
],
"responses": {
"200": {
"description": "Successful Response",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProductGetResponse"
}
}
}
},
"422": {
"description": "Validation Error",
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/HTTPValidationError"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"AuthLoginRequest": {
"properties": {
"auth_date": {
"type": "integer",
"title": "Auth Date"
},
"first_name": {
"type": "string",
"title": "First Name"
},
"hash": {
"type": "string",
"title": "Hash"
},
"id": {
"type": "integer",
"title": "Id"
},
"photo_url": {
"type": "string",
"title": "Photo Url"
}
},
"type": "object",
"required": [
"auth_date",
"first_name",
"hash",
"id",
"photo_url"
],
"title": "AuthLoginRequest"
},
"AuthLoginResponse": {
"properties": {
"access_token": {
"type": "string",
"title": "Access Token"
}
},
"type": "object",
"required": [
"access_token"
],
"title": "AuthLoginResponse"
},
"ClientDetailsSchema": {
"properties": {
"address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Address"
},
"phone_number": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Phone Number"
},
"inn": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
],
"title": "Inn"
},
"email": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"title": "Email"
}
},
"type": "object",
"title": "ClientDetailsSchema"
},
"ClientGetAllResponse": {
"properties": {
"clients": {
"items": {
"$ref": "#/components/schemas/ClientSchema"
},
"type": "array",
"title": "Clients"
}
},
"type": "object",
"required": [
"clients"
],
"title": "ClientGetAllResponse"
},
"ClientSchema": {
"properties": {
"id": {
"type": "integer",
"title": "Id"
},
"name": {
"type": "string",
"title": "Name"
},
"details": {
"anyOf": [
{
"$ref": "#/components/schemas/ClientDetailsSchema"
},
{
"type": "null"
}
]
}
},
"type": "object",
"required": [
"id",
"name"
],
"title": "ClientSchema"
},
"ClientUpdateDetailsRequest": {
"properties": {
"client_id": {
"type": "integer",
"title": "Client Id"
},
"details": {
"$ref": "#/components/schemas/ClientDetailsSchema"
}
},
"type": "object",
"required": [
"client_id",
"details"
],
"title": "ClientUpdateDetailsRequest"
},
"DealAddServicesRequest": {
"properties": {
"deal_id": {
"type": "integer",
"title": "Deal Id"
},
"services": {
"items": {
"$ref": "#/components/schemas/DealServiceSchema"
},
"type": "array",
"title": "Services"
}
},
"type": "object",
"required": [
"deal_id",
"services"
],
"title": "DealAddServicesRequest"
},
"DealAddServicesResponse": {
"properties": {
"ok": {
"type": "boolean",
"title": "Ok"
},
"message": {
"type": "string",
"title": "Message"
}
},
"type": "object",
"required": [
"ok",
"message"
],
"title": "DealAddServicesResponse"
},
"DealChangeStatusRequest": {
"properties": {
"deal_id": {
"type": "integer",
"title": "Deal Id"
},
"new_status": {
"type": "integer",
"title": "New Status"
}
},
"type": "object",
"required": [
"deal_id",
"new_status"
],
"title": "DealChangeStatusRequest"
},
"DealChangeStatusResponse": {
"properties": {
"ok": {
"type": "boolean",
"title": "Ok"
}
},
"type": "object",
"required": [
"ok"
],
"title": "DealChangeStatusResponse"
},
"DealCreateRequest": {
"properties": {
"name": {
"type": "string",
"title": "Name"
}
},
"type": "object",
"required": [
"name"
],
"title": "DealCreateRequest"
},
"DealQuickCreateRequest": {
"properties": {
"name": {
"type": "string",
"title": "Name"
},
"client_name": {
"type": "string",
"title": "Client Name"
},
"client_address": {
"type": "string",
"title": "Client Address"
},
"comment": {
"type": "string",
"title": "Comment"
},
"acceptance_date": {
"type": "string",
"format": "date-time",
"title": "Acceptance Date"
}
},
"type": "object",
"required": [
"name",
"client_name",
"client_address",
"comment",
"acceptance_date"
],
"title": "DealQuickCreateRequest"
},
"DealQuickCreateResponse": {
"properties": {
"deal_id": {
"type": "integer",
"title": "Deal Id"
}
},
"type": "object",
"required": [
"deal_id"
],
"title": "DealQuickCreateResponse"
},
"DealServiceSchema": {
"properties": {
"id": {
"type": "integer",
"title": "Id"
},
"quantity": {
"type": "integer",
"title": "Quantity"
}
},
"type": "object",
"required": [
"id",
"quantity"
],
"title": "DealServiceSchema"
},
"DealSummary": {
"properties": {
"id": {
"type": "integer",
"title": "Id"
},
"name": {
"type": "string",
"title": "Name"
},
"client_name": {
"type": "string",
"title": "Client Name"
},
"changed_at": {
"type": "string",
"format": "date-time",
"title": "Changed At"
},
"status": {
"type": "integer",
"title": "Status"
},
"total_price": {
"type": "integer",
"title": "Total Price"
}
},
"type": "object",
"required": [
"id",
"name",
"client_name",
"changed_at",
"status",
"total_price"
],
"title": "DealSummary"
},
"DealSummaryResponse": {
"properties": {
"summaries": {
"items": {
"$ref": "#/components/schemas/DealSummary"
},
"type": "array",
"title": "Summaries"
}
},
"type": "object",
"required": [
"summaries"
],
"title": "DealSummaryResponse"
},
"HTTPValidationError": {
"properties": {
"detail": {
"items": {
"$ref": "#/components/schemas/ValidationError"
},
"type": "array",
"title": "Detail"
}
},
"type": "object",
"title": "HTTPValidationError"
},
"PaginationInfoSchema": {
"properties": {
"total_pages": {
"type": "integer",
"title": "Total Pages"
},
"total_items": {
"type": "integer",
"title": "Total Items"
}
},
"type": "object",
"required": [
"total_pages",
"total_items"
],
"title": "PaginationInfoSchema"
},
"ProductCreateRequest": {
"properties": {
"name": {
"type": "string",
"title": "Name"
},
"article": {
"type": "string",
"title": "Article"
},
"client_id": {
"type": "integer",
"title": "Client Id"
},
"barcodes": {
"items": {
"type": "string"
},
"type": "array",
"title": "Barcodes"
}
},
"type": "object",
"required": [
"name",
"article",
"client_id",
"barcodes"
],
"title": "ProductCreateRequest"
},
"ProductCreateResponse": {
"properties": {
"product_id": {
"type": "integer",
"title": "Product Id"
}
},
"type": "object",
"required": [
"product_id"
],
"title": "ProductCreateResponse"
},
"ProductGetResponse": {
"properties": {
"products": {
"items": {
"$ref": "#/components/schemas/ProductSchema"
},
"type": "array",
"title": "Products"
},
"pagination_info": {
"$ref": "#/components/schemas/PaginationInfoSchema"
}
},
"type": "object",
"required": [
"products",
"pagination_info"
],
"title": "ProductGetResponse"
},
"ProductSchema": {
"properties": {
"id": {
"type": "integer",
"title": "Id"
},
"name": {
"type": "string",
"title": "Name"
},
"article": {
"type": "string",
"title": "Article"
},
"client_id": {
"type": "integer",
"title": "Client Id"
}
},
"type": "object",
"required": [
"id",
"name",
"article",
"client_id"
],
"title": "ProductSchema"
},
"ServiceCategorySchema": {
"properties": {
"id": {
"type": "integer",
"title": "Id"
},
"name": {
"type": "string",
"title": "Name"
}
},
"type": "object",
"required": [
"id",
"name"
],
"title": "ServiceCategorySchema"
},
"ServiceCreateCategoryRequest": {
"properties": {
"category": {
"$ref": "#/components/schemas/ServiceCategorySchema"
}
},
"type": "object",
"required": [
"category"
],
"title": "ServiceCreateCategoryRequest"
},
"ServiceCreateCategoryResponse": {
"properties": {
"ok": {
"type": "boolean",
"title": "Ok"
},
"message": {
"type": "string",
"title": "Message"
}
},
"type": "object",
"required": [
"ok",
"message"
],
"title": "ServiceCreateCategoryResponse"
},
"ServiceCreateRequest": {
"properties": {
"service": {
"$ref": "#/components/schemas/ServiceSchema"
}
},
"type": "object",
"required": [
"service"
],
"title": "ServiceCreateRequest"
},
"ServiceCreateResponse": {
"properties": {
"ok": {
"type": "boolean",
"title": "Ok"
},
"message": {
"type": "string",
"title": "Message"
}
},
"type": "object",
"required": [
"ok",
"message"
],
"title": "ServiceCreateResponse"
},
"ServiceGetAllCategoriesResponse": {
"properties": {
"categories": {
"items": {
"$ref": "#/components/schemas/ServiceCategorySchema"
},
"type": "array",
"title": "Categories"
}
},
"type": "object",
"required": [
"categories"
],
"title": "ServiceGetAllCategoriesResponse"
},
"ServiceGetAllResponse": {
"properties": {
"services": {
"items": {
"$ref": "#/components/schemas/ServiceSchema"
},
"type": "array",
"title": "Services"
}
},
"type": "object",
"required": [
"services"
],
"title": "ServiceGetAllResponse"
},
"ServiceSchema": {
"properties": {
"id": {
"type": "integer",
"title": "Id"
},
"name": {
"type": "string",
"title": "Name"
},
"category": {
"$ref": "#/components/schemas/ServiceCategorySchema"
},
"price": {
"type": "number",
"title": "Price"
}
},
"type": "object",
"required": [
"id",
"name",
"category",
"price"
],
"title": "ServiceSchema"
},
"ValidationError": {
"properties": {
"loc": {
"items": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer"
}
]
},
"type": "array",
"title": "Location"
},
"msg": {
"type": "string",
"title": "Message"
},
"type": {
"type": "string",
"title": "Error Type"
}
},
"type": "object",
"required": [
"loc",
"msg",
"type"
],
"title": "ValidationError"
}
},
"securitySchemes": {
"HTTPBearer": {
"type": "http",
"scheme": "bearer"
}
}
}
}