From 4134af8b3c06deec525ff4af276176539abf5e48 Mon Sep 17 00:00:00 2001 From: Nico Kroll Date: Fri, 5 Jul 2024 09:49:15 +0200 Subject: [PATCH] Further developments --- src/v2/shop.yaml | 771 ++++++++--------------------------------------- 1 file changed, 131 insertions(+), 640 deletions(-) diff --git a/src/v2/shop.yaml b/src/v2/shop.yaml index 4cd6fad..ac66c3e 100644 --- a/src/v2/shop.yaml +++ b/src/v2/shop.yaml @@ -1,12 +1,12 @@ openapi: 3.0.0 info: title: "TyrePro-API, Shop" - version: "Version 2" + version: "Version 3" servers: - url: "https://musterreifen.com/api/shop" - description: "Demo server" - - url: "https://onlineservices.demo.rz2.prm-ag.de/O6J20ZebmghzkNgrdD759A/api/shop" - description: "Development server" + description: "Development server, customers domain" + - url: "https://onlineservices.dev.rz2.prm-ag.de/q7U4PLrRfa7vrzFR2Kvb3Q/api/shop" + description: "Development server, generic domain" paths: /AddressStates: get: @@ -44,25 +44,6 @@ paths: $ref: "#/components/responses/GenericError" security: - SessionScheme: [] - /ColumnConfigs: - get: - tags: - - "Configuration" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/ColumnConfig" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] /Modules: get: tags: @@ -82,10 +63,10 @@ paths: $ref: "#/components/responses/GenericError" security: - SessionScheme: [] - /MaterialTypes: + /TableConfigs: get: tags: - - "Filters" + - "Configuration" parameters: - $ref: "#/components/parameters/GuidOnlineService" responses: @@ -96,18 +77,18 @@ paths: schema: type: "array" items: - $ref: "#/components/schemas/MaterialType" + $ref: "#/components/schemas/TableConfig" default: $ref: "#/components/responses/GenericError" security: - SessionScheme: [] - /VehicleTypes: + /FilterSuggestions: get: tags: - - "Filters" + - "Configuration" + - "Search" parameters: - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" responses: 200: description: "successful operation" @@ -116,376 +97,7 @@ paths: schema: type: "array" items: - $ref: "#/components/schemas/VehicleType" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /Widths: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidHubBoreHole" - - $ref: "#/components/parameters/GuidManufacturer" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/Width" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /Sections: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidHubBoreHole" - - $ref: "#/components/parameters/GuidManufacturer" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/Section" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /Diameters: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidHubBoreHole" - - $ref: "#/components/parameters/GuidManufacturer" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/Diameter" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /SpeedIndices: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidHubBoreHole" - - $ref: "#/components/parameters/GuidManufacturer" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/SpeedIndex" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /LoadIndices: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidHubBoreHole" - - $ref: "#/components/parameters/GuidManufacturer" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/LoadIndex" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /HoleCounts: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidHubBoreHole" - - $ref: "#/components/parameters/GuidManufacturer" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/HoleCount" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /HoleCircles: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidHubBoreHole" - - $ref: "#/components/parameters/GuidManufacturer" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/HoleCircle" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /Offsets: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidHubBoreHole" - - $ref: "#/components/parameters/GuidManufacturer" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/Offset" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /HubBoreHoles: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidManufacturer" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/HubBoreHole" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /Manufacturers: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidHubBoreHole" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/Manufacturer" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /VehicleManufacturers: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidVehicleDisplacement" - - $ref: "#/components/parameters/GuidVehicleModel" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/VehicleManufacturer" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /VehicleDisplacements: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidVehicleManufacturer" - - $ref: "#/components/parameters/GuidVehicleModel" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/VehicleDisplacement" - default: - $ref: "#/components/responses/GenericError" - security: - - SessionScheme: [] - /VehicleModels: - get: - tags: - - "Filters" - parameters: - - $ref: "#/components/parameters/GuidOnlineService" - - $ref: "#/components/parameters/RequiredGuidMaterialType" - - $ref: "#/components/parameters/RequiredGuidVehicleType" - - $ref: "#/components/parameters/GuidVehicleManufacturer" - - $ref: "#/components/parameters/GuidVehicleDisplacement" - responses: - 200: - description: "successful operation" - content: - application/json: - schema: - type: "array" - items: - $ref: "#/components/schemas/VehicleModel" + $ref: "#/components/schemas/FilterSuggestion" default: $ref: "#/components/responses/GenericError" security: @@ -493,31 +105,12 @@ paths: /Filters: get: tags: - - "Filters" - - "Articles" + - "Search" parameters: - $ref: "#/components/parameters/GuidOnlineService" - - name: "SearchTerm" - in: "query" - required: false - schema: - type: "string" - default: null - example: "2055516" - - name: "GuidMaterialType" - in: "query" - required: false - schema: - type: "string" - default: null - example: "ebb89e89-8d25-809e-7814-c53b686ae164" - - name: "GuidVehicleType" - in: "query" - required: false - schema: - type: "string" - default: null - example: "ebb89e89-8d25-809e-7814-c53b686ae164" + - $ref: "#/components/parameters/SearchTerm" + - $ref: "#/components/parameters/GuidMaterialType" + - $ref: "#/components/parameters/GuidVehicleType" - $ref: "#/components/parameters/GuidWidth" - $ref: "#/components/parameters/GuidSection" - $ref: "#/components/parameters/GuidDiameter" @@ -528,9 +121,27 @@ paths: - $ref: "#/components/parameters/GuidOffset" - $ref: "#/components/parameters/GuidHubBoreHole" - $ref: "#/components/parameters/GuidManufacturer" - - $ref: "#/components/parameters/GuidVehicleManufacturer" - - $ref: "#/components/parameters/GuidVehicleDisplacement" - - $ref: "#/components/parameters/GuidVehicleModel" + - name: "Type" + description: "Provide the types you want to get. If this parameter is not provided, all types will be returned." + in: "query" + required: false + schema: + type: "array" + items: + type: "string" + enum: + - "MaterialType" + - "VehicleType" + - "Width" + - "Section" + - "Diameter" + - "SpeedIndex" + - "LoadIndex" + - "HoleCount" + - "HoleCircle" + - "Offset" + - "HubBoreHole" + - "Manufacturer" responses: 200: description: "successful operation" @@ -547,9 +158,22 @@ paths: /Articles: get: tags: - - "Articles" + - "Search" parameters: - $ref: "#/components/parameters/GuidOnlineService" + - $ref: "#/components/parameters/SearchTerm" + - $ref: "#/components/parameters/GuidMaterialType" + - $ref: "#/components/parameters/GuidVehicleType" + - $ref: "#/components/parameters/GuidWidth" + - $ref: "#/components/parameters/GuidSection" + - $ref: "#/components/parameters/GuidDiameter" + - $ref: "#/components/parameters/GuidSpeedIndex" + - $ref: "#/components/parameters/GuidLoadIndex" + - $ref: "#/components/parameters/GuidHoleCount" + - $ref: "#/components/parameters/GuidHoleCircle" + - $ref: "#/components/parameters/GuidOffset" + - $ref: "#/components/parameters/GuidHubBoreHole" + - $ref: "#/components/parameters/GuidManufacturer" - name: "GuidBranch" description: "Required for providing stock information." in: "query" @@ -566,40 +190,6 @@ paths: type: "number" default: null example: 4 - - name: "SearchTerm" - in: "query" - required: false - schema: - type: "string" - default: null - example: "2055516" - - name: "GuidMaterialType" - in: "query" - required: false - schema: - type: "string" - default: null - example: "ebb89e89-8d25-809e-7814-c53b686ae164" - - name: "GuidVehicleType" - in: "query" - required: false - schema: - type: "string" - default: null - example: "ebb89e89-8d25-809e-7814-c53b686ae164" - - $ref: "#/components/parameters/GuidWidth" - - $ref: "#/components/parameters/GuidSection" - - $ref: "#/components/parameters/GuidDiameter" - - $ref: "#/components/parameters/GuidSpeedIndex" - - $ref: "#/components/parameters/GuidLoadIndex" - - $ref: "#/components/parameters/GuidHoleCount" - - $ref: "#/components/parameters/GuidHoleCircle" - - $ref: "#/components/parameters/GuidOffset" - - $ref: "#/components/parameters/GuidHubBoreHole" - - $ref: "#/components/parameters/GuidManufacturer" - - $ref: "#/components/parameters/GuidVehicleManufacturer" - - $ref: "#/components/parameters/GuidVehicleDisplacement" - - $ref: "#/components/parameters/GuidVehicleModel" responses: 200: description: "successful operation" @@ -719,7 +309,7 @@ components: FaxNumber: null Latitude: 12.34 Longitude: 12.34 - ColumnConfig: + TableConfig: type: "object" required: - "Guid" @@ -740,12 +330,12 @@ components: DataType: type: "string" enum: - - "String" - - "Integer" - - "Decimal" - - "Boolean" - - "Date" - - "DateTime" + - "string" + - "integer" + - "decimal" + - "boolean" + - "date" + - "dateTime" FieldName: type: "string" Module: @@ -773,27 +363,16 @@ components: enum: - "NewTab" - "SameTab" - MaterialType: + FilterSuggestion: type: "object" required: - "Guid" - - "Designation" properties: - Guid: + GuidMaterialType: type: "string" - Designation: + GuidVehicleType: type: "string" - VehicleType: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - ComfortSearchSets: + Types: type: "array" items: type: "object" @@ -805,143 +384,26 @@ components: type: "string" Type: type: "string" - Width: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - Section: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - Diameter: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - SpeedIndex: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - LoadIndex: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - HoleCount: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - HoleCircle: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - Offset: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - HubBoreHole: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - Manufacturer: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - VehicleManufacturer: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - VehicleDisplacement: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" - VehicleModel: - type: "object" - required: - - "Guid" - - "Designation" - properties: - Guid: - type: "string" - Designation: - type: "string" + enum: + - "MaterialType" + - "VehicleType" + - "Width" + - "Section" + - "Diameter" + - "SpeedIndex" + - "LoadIndex" + - "HoleCount" + - "HoleCircle" + - "Offset" + - "HubBoreHole" + - "Manufacturer" Filter: type: "object" required: - "Guid" - "Designation" - "Type" - - "Elements" + - "Options" properties: Guid: type: "string" @@ -962,10 +424,7 @@ components: - "Offset" - "HubBoreHole" - "Manufacturer" - - "VehicleManufacturer" - - "VehicleDisplacement" - - "VehicleModel" - Elements: + Options: type: "array" items: type: "object" @@ -988,11 +447,34 @@ components: required: - "Guid" - "Designation" + - "StockType" + - "AmountInCart" + - "NumberOfDecimalPlacesForStock" properties: Guid: type: "string" Designation: type: "string" + Price: + type: "number" + StockType: + type: "string" + EarliestDeliveryDate: + type: "string" + format: "date" + LatestDeliveryDate: + type: "string" + format: "date" + AmountInCart: + type: "number" + NumberOfDecimalPlacesForStock: + type: "integer" + Detail-1: + type: "string" + Detail-2: + type: "integer" + Stock-1: + type: "number" securitySchemes: SessionScheme: type: http @@ -1025,18 +507,18 @@ components: type: "string" default: null example: "ebb89e89-8d25-809e-7814-c53b686ae164" - RequiredGuidMaterialType: + GuidMaterialType: name: "GuidMaterialType" in: "query" - required: true + required: false schema: type: "string" default: null example: "ebb89e89-8d25-809e-7814-c53b686ae164" - RequiredGuidVehicleType: + GuidVehicleType: name: "GuidVehicleType" in: "query" - required: true + required: false schema: type: "string" default: null @@ -1121,30 +603,14 @@ components: type: "string" default: null example: "ebb89e89-8d25-809e-7814-c53b686ae164" - GuidVehicleManufacturer: - name: "GuidVehicleManufacturer" + SearchTerm: + name: "SearchTerm" in: "query" required: false schema: type: "string" default: null - example: "ebb89e89-8d25-809e-7814-c53b686ae164" - GuidVehicleDisplacement: - name: "GuidVehicleDisplacement" - in: "query" - required: false - schema: - type: "string" - default: null - example: "ebb89e89-8d25-809e-7814-c53b686ae164" - GuidVehicleModel: - name: "GuidVehicleModel" - in: "query" - required: false - schema: - type: "string" - default: null - example: "ebb89e89-8d25-809e-7814-c53b686ae164" + example: "2055516" responses: GenericError: description: "Unexpected error like 4XX or 5XX http errors." @@ -1152,3 +618,28 @@ components: application/json: schema: $ref: "#/components/schemas/GenericError" + + + + + + + + + + + + + + + + + + + + + + + + +